1

フィールド名 render をauto_idのようにパーソナライズしたいと思います。いくつかのコード:

>>> from django import forms
>>> from django.forms.formsets import formset_factory
>>> class MyForm(forms.Form):
...   name = forms.CharField()
... 
>>> myform_formset = formset_factory(MyForm)
>>> print myform_formset(auto_id='my_form_%s')

<input id="my_form_form-TOTAL_FORMS" name="form-TOTAL_FORMS" [...]
<tr><th><label for="my_form_form-0-name">Name:</label></th><td>
<input id="my_form_form-0-name" name="form-0-name" type="text" /></td></tr>

ID はパーソナライズされています: id=" my_form_ form-0-name". 実際、フィールド名は name="form-0-name" のようにレンダリングされます。name=" my_form_ form-0-name" のようにレンダリングしたいと思います。

なぜ私はそれが必要なのですか? フォームに 2 つの異なるフォームセットがあるため、「form-0-name」という名前の複数のフィールドがあり、POST データには適していません。

4

1 に答える 1

3

prefixに引数を追加できますmyform_formset

myform_formset = formset_factory(MyForm)
print myform_formset(prefix="my_form")


<td><input id="id_my_form-1-name" name="my_form-1-name" type="text" /></td></tr>
于 2013-11-08T14:52:37.877 に答える