该.is_folderish
属性在许多地方使用。例如,将对象设置为默认视图或激活对象讨论时。
我的第一个问题是如何检查对象是否具有该属性集。我尝试使用bin/instance debug
类似这样的东西:
>>> app.site.news.is_folderish
...
AttributeError: is_folderish
我想我无法以这种方式访问属性,因为app.site.news
它是具有该属性的对象的包装器。
我的第二个问题是如何将该属性添加到新的 Dexterity 对象。我想我可以使用下面的代码来做到这一点(但在我的第一个问题得到解决之前我无法测试它)。
from zope import schema
from plone.dexterity.content import Item
class IHorse(form.Schema):
...
class Horse(Item):
def __init__(self):
super(Horse, self).__init__(id)
is_folderish = False
但我不确定如何将这两个类联系起来。