Plone MultiCheckBoxWidget呈现为In-Out Widget
我们有以下敏捷模式:Plone MultiCheckBoxWidget呈现为In-Out Widget,plone,dexterity,z3c.form,Plone,Dexterity,Z3c.form,我们有以下敏捷模式: 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(vis
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)
)
该字段是使用输入和输出小部件而不是使用复选框呈现的
在我们的模式中指定
为什么?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)
)
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)
)
那没什么区别,那没什么区别。