2011-07-12 12 views
3

私のジャンゴ形式のために「マッド・リッブ」スタイルのフォーム(cf. http://www.lukew.com/ff/entry.asp?1007)を作ることに興味があります。私はすべてのフォームフィールドを繰り返し、手作業でテキストをレイアウトすることでそれを行うことができます。 <li>There should be {{ form.num_widgets }} widgets</li>しかし、私はフォームフィールドのラベルがどのように使われていないのか、フォーム定義ファイルとテンプレートファイルから部分的にどのように広がっているのか、それをどうやって説明するのが難しいのか嫌いです。Djangoの 'mad lib'スタイルフォームフィールドを行う簡単な方法はありますか?

djangoに魅力的なlibフォームを作成する方法はありますか?何か私は"There should be %(something)s widgets"にウィジェットのlabelを設定し、%(something)sをフィールドのレンダリングされたフォームに置き換えて{{form.as_p}}を呼び出すことができ、自動的に動作しますか?

@register.simple_tag 
def madlibfield(formfield): 
    return formfield.label % formfield 

あなたは、その使用することができますhttps://docs.djangoproject.com/en/dev/howto/custom-template-tags/

あなたは簡単の線に沿って何かをしてタグを作成することができます。ここに記載されているよう

+0

興味深いのは+1です。 – SingleNegationElimination

答えて

1

これは、カスタムテンプレートタグの良いケースですあなたは(as_p機能を複製するような)出力と手の込んだ取得したい場合は

{% madlibfield form.num_widgets %} 

としてあなたのテンプレートでは、それはTRですタグでこれを行うには、アイアール。

関連する問題