私の敏捷性コンテンツタイプを取得してカスタムフォームを表示する際に問題があります。私は以前の製品ですでにこれを行っていましたが、驚くべきことに、Plone 4.1とplone.app.dexterity 1.0.3を使用してこれを達成することはできません。Plone 4の敏捷性を持つカスタムAddFormテンプレート
私のCrmContactコンテンツタイプは、package.name.types.contact.py
from five import grok
from zope import schema
from zope.interface import implements
from plone.directives import form, dexterity
class ICrmContact(form.Schema):
"""A contact item for the CRM"""
title = schema.TextLine(
title=_(u"Company name"),
)
...
class CrmContact(dexterity.Container):
implements(ICrmContact)
class Add(dexterity.AddForm):
grok.context(ICrmContact)
grok.name('package.name.contacts.types.contact')
grok.template('add')
テンプレートは、パッケージ/ name/types/contact_templatesにあります。これは典型的なテンプレートです。例外を発生させるために、tal:contentを使用して既存のメソッドを呼び出さないダミーノードがあるため、レンダリングされていないことがわかります。私はテンプレート自体が問題ではないと確信しています。
コンテンツタイプFTIはインストール時に正しく登録され、コンテンツタイプは利用可能で追加可能です。
最後に、プロファイルの/デフォルト/ types.package.name.types.contact.xml:
<?xml version="1.0"?>
<object name="package.name.types.contact" meta_type="Dexterity FTI"
i18n:domain="package.name" xmlns:i18n="http://xml.zope.org/namespaces/i18n">
...
<!-- Method aliases -->
<alias from="(Default)" to="(dynamic view)" />
<alias from="edit" to="@@edit" />
<alias from="sharing" to="@@sharing" />
<alias from="view" to="(selected layout)" />
<!-- Actions -->
<action title="View" action_id="view" category="object"
condition_expr="" url_expr="string:${object_url}" visible="True">
<permission value="View" />
</action>
<action title="Edit" action_id="edit" category="object"
condition_expr="" url_expr="string:${object_url}/edit" visible="True">
<permission value="Modify portal content" />
</action>
</object>
無関係、多分私はここで何かを追加する必要があります...
私は私が考えますあなたが見るかもしれないように正しい手順に従ってください、しかし私はまだそれを働かせることができません。
私はupdateWidgets()メソッドを提供してブレークポイントを挿入すると、クラスAddがインスタンス化されていることが分かります。オブジェクトをイントロスペクトすると、self.templateはNoneになります。
(Pdb) getattr(self, 'grokcore.view.directive.template')
'add'
私のカスタムタイプのフォームを追加するにはどうすればよいでしょうか?
私はあなたがテンプレートを "templates"フォルダに追加しなければならないと思っていて、そのディレクトリに "contact_templates"を使用しているようです。 – vangheem
敏捷性KGS 1.0.3に固定されたパッケージにいくつかのバグがあります。あなたはこれを使っていますか? http://good-py.appspot.com/release/dexterity/1.0.3-1?plone=4.1 – hvelarde