MultiCheckBoxWidget отображается как In-Out-Widget

У нас есть следующая схема Ловкости:

from plone.app.form.widgets import MultiCheckBoxWidget

visibilityVocabulary = SimpleVocabulary(
[
    SimpleTerm(u'OSP', title=u'OSP'),
    SimpleTerm(u'BIZ', title=u'BIZ'),
]

class ISomeSchema(Interface):
     # ...
     form.widget(visibility=MultiCheckBoxWidget)
     visibility = schema.Set(title=Visibility',
                             value_type=schema.Choice(vocabulary=visibilityVocabulary)
                             )

Поле визуализируется с использованием виджета In-And-Out вместо использования флажков, как указано в нашей схеме.

Зачем?

1 ответ

Виджеты в plone.app.form для zope.formlib формы. Ловкость использует z3c.form библиотека форм.

Пытаться z3c.form.browser.checkbox.CheckBoxFieldWidget вместо. Как это:

from zope import schema
from zope.schema.vocabulary import SimpleVocabulary
from zope.schema.vocabulary import SimpleTerm

from plone.directives import form

from z3c.form.browser.checkbox import CheckBoxFieldWidget

visibilityVocabulary = SimpleVocabulary(
[
    SimpleTerm(u'OSP', title=u'OSP'),
    SimpleTerm(u'BIZ', title=u'BIZ'),
])

class ISomeSchema(form.Schema):

     form.widget(visibility=CheckBoxFieldWidget)
     visibility = schema.Set(
             title=u'Visibility',
             value_type=schema.Choice(vocabulary=visibilityVocabulary)
         )
Другие вопросы по тегам