4

したがって、ここにスニペットがあります:

これを再利用するつもりでしたが、forms.pyでこれを宣言し、htmlをレンダリングします。

submit_button = SubmitButtonField()

valueは提供されません(stringにエスケープされますNonenameが、デフォルトはsubmit_button、おそらくforms.Widgetコンストラクターが原因です。

名前と値を指定するにはどうすればよいですか?ウィジェットのinitメソッドを書いてみました...

def __init__(self, name, value, label, attrs):        
    print '%s, %s, %s, %s' %(name, value, label, attrs)
    self.name, self.value,self.label = name, value, label
    self.attrs = attrs

しかし、フィールドが常に(おそらく)デフォルトでウィジェットを使用する場合、これはまったく意味がありませんSubmitButtonWidget...代わりに、フィールドのinitメソッドでこれらの値を指定する必要があります。しかし、それは私にできません。

提供された値を受け入れることができるように、このスニペットをどのように書き直す必要がありますか?

4

1 に答える 1

3

スニペットの最上部にあるコメントに書かれているように、使用法は

submit_button = SubmitButtonField(label="", initial=u"Your submit button text")

欠落している値は、initialキーワード引数に由来します。名前はフォームフィールドの名前です。

于 2012-06-03T21:43:25.190 に答える