我们有一个敏捷内容类型要求从导航行为中排除,但exclude_from_nav
字段的默认值为True
。在行为plone.app.dexterity.behaviors.exclfromnav.IExcludeFromNavigation
它默认为False
。你如何覆盖Plone灵巧行为中的一个字段的默认值?
很明显,我可以创建自己的行为,复制IExcludeFromNavigation
除了默认值,但我想知道是否有办法做到这一点基础上重用IExcludeFromNavigation
。我们有其他类型的内容使用IExcludeFromNavigation
,我们希望它默认为False
。
我们正在使用的Plone 4.1rc3和敏捷1.0
另一个选择是注册一个自定义添加表单,然后使用'表单'(或者它是'视图'? )discriminator to default_value()来指定仅用于该表单的覆盖。 – optilude
谢谢,我用这个我的场景,我有两个不同的对象类型在默认情况下我想排除在同一个容器中。问题是我不能把两个对象定义相同的装饰器,否则我会得到配置冲突的抱怨。我结束了刚刚声明的类型之一:: return data.request.URL.endswith('++ add ++ my_item_type')或data.request.URL.endswith('++ add ++ my_other_type') –
和就像你的例子,我不得不删除上下文参数为它工作...确实似乎hacky。 –