この.is_folderish
属性は多くの場所で使用されています。たとえば、オブジェクトをデフォルトビューとして設定する場合、またはオブジェクトのディスカッションをアクティブ化する場合です。
私の最初の質問は、オブジェクトにその属性が設定されているかどうかを確認する方法です。私は次のbin/instance debug
ようなものでを使用してみました:
>>> app.site.news.is_folderish
...
AttributeError: is_folderish
app.site.news
はその属性を持つオブジェクトのラッパーであるため、その方法では属性に到達できないと思います。
私の2番目の質問は、その属性を新しい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
しかし、両方のクラスをどのようにリンクできるかはわかりません。