2

器用さのコンテンツタイプにカスタマイズされた追加フォームを作成しようとしています。私はこのリンクからの指示に従いました:http://plone.org/products/dexterity/documentation/manual/developer-manual/advanced/forms

私のコンテンツタイプでは:

class BusinessTransactionFormAddForm(dexterity.AddForm):
    grok.name('ebpls.app.businesstransactionform')

私のテンプレート、businesstransactionformaddform.ptには、次のリンクのレイアウトを使用しました: http://dexterity-developer-manual.readthedocs.org:8000/en/latest/schema-driven-forms/customising-form-presentation/ layout- templates.html

追加フォームをカスタマイズしたかった理由は、DataGridフィールドから値を計算するためにjQueryを挿入したかったためです。javascriptの挿入に問題はありません。唯一の問題は、Webページ上で、上部と下部に配置された2つのフォームが作成されることです。つまり、同じ種類のフィールドがもう一方の下部に複製されました。使用したテンプレートに問題がありますか?追加ビューの適切なテンプレートを知っている人はいますか?ありがとう!

4

1 に答える 1

3

Dexterity は、追加フォームのテンプレートがページ全体ではなくフォーム専用であると想定します。そのため、フォーム テンプレートを取得し、main_template を使用する別のテンプレートにラップします

カスタム テンプレートはページ全体をレンダリングするため、form.wrap ディレクティブを使用してラッピングをオフにする必要があります。

from five import grok
from plone.directives import form
from plone.directives import dexterity

class BusinessTransactionFormAddForm(dexterity.AddForm):
    grok.name('ebpls.app.businesstransactionform')
    form.wrap(False)
于 2012-11-23T19:15:44.657 に答える