Как я могу реализовать множественный выбор полей в Wagtail?

#wagtail

Вопрос:

Как я могу реализовать множественный выбор полей в Wagtail? Например, я хотел бы, чтобы пользователь мог выбрать h2 h3 , или h4 для поля в редакционной панели Wagtail. Возможно ли это?

Ответ №1:

Определите поле с choices аргументом:

 HEADING_SIZE_CHOICES = [
    ('h2', 'h2'),
    ('h3', 'h3'),
    ('h4', 'h4'),
]

class MyPage(Page):
    heading_size = models.CharField(max_length=10, choices=HEADING_SIZE_CHOICES)

    content_panels = Page.content_panels   [
        FieldPanel('heading_size')
    ]
 

Затем это будет отображаться в редакторе страниц в виде раскрывающегося списка «Выбрать» и может использоваться как любое другое поле:

 <{{ page.heading_size }}>{{ page.title }}</{{ page.heading_size }}>