Multiple choices in wagtail admin

When using Django ModelAdmin, I can use:

filter_horizontal = ('some_many_to_many_field',) 

Thus, instead of displaying the default multiple-choice widget, it shows a nice two-block interface for selecting some values.

Is there a similar option to use the same widget as in django ModelAdmin for my many-to-many fields in wagtail ModelAdmin?

Thank!

+4
source share
1 answer

In answer to your question: No, there is no equivalent filter_horizontalin the Wagtail app contrib.modeladmin.

, . FieldPanel widget . :

from django import forms
from django.db import models
from wagtail.wagtailadmin.edit_handlers import FieldPanel

class TestModel(models.Model):
    manytomany = models.ManyToManyField('someapp.SomeModel', blank=True)

    panels = [
        FieldPanel('manytomany', widget=forms.CheckboxSelectMultiple)
    ]

, , , wagtail.wagtailcore.models.Page, :

from django import forms
from django.db import models
from modelcluster.fields import ParentalManyToManyField
from wagtail.wagtailcore.models import Page
from wagtail.wagtailadmin.edit_handlers import FieldPanel

class TestPageModel(Page):
    manytomany = ParentalManyToManyField('someapp.SomeModel', blank=True)

    content_panels = Page.content_panels + [
        FieldPanel('manytomany', widget=forms.CheckboxSelectMultiple)
    ]

Django filter_horizontal, , , . , Django. Wagtail admin .

+5

Source: https://habr.com/ru/post/1673053/


All Articles