3

PloneFormGen を使用して会議の登録フォームを設定しようとしています。TALES 式を使用して既存のレコードの数をカウントし、「1」を追加して、登録者の「ありがとう」ページにこれを表示したいと考えています。登録番号。これは可能ですか?

過去に以下を使用してランダムな 6 桁の番号を生成し、サポート リクエストのケース番号 ID を作成しました。この番号は、リクエストを追跡する以外には問題ではなく、ケースがクローズされると削除されます。 .

python:random.randint(100000, 999999)

私は正しい道を進んでいますか、それとも完全に間違った方法で進んでいますか?

4

1 に答える 1

6

私は過去に次のトリックでこれを行いました:

  1. ZMI で、開始番号を含む「reg_count」という名前の整数プロパティをフォーム上に作成します (フォーム フォルダーに移動し、URL に /manage_propertiesForm を追加します)。

  2. 非表示フィールドをフォームに追加します。ID「regno」を使用しました。

  3. カスタム スクリプト アダプターを使用して reg_count プロパティをフェッチし、インクリメントして、リクエストのフォーム ディクショナリに配置します。

    reg_count = context.getProperty('reg_count', 0) + 1
    context.manage_changeProperties(reg_count=reg_count)
    request.form['regno'] = str(reg_count)
    
  4. 感謝ページをカスタマイズして表示します。

于 2013-03-07T16:12:10.307 に答える