假设我在表单中有一个名为address_line_1
的字段,一旦我渲染它就会生成它:
<input id="id_1-address_line_1" type="text" name="1-address_line_1">
我在不同的页面上使用此表单但是它没有一致性,一个生成为id_1-address_line_1
而另一个相同的形式生成id_1-address_line_1
因此它对我的javascript方面有害。如何删除id_X
部分,以便呈现的ID与字段名address_line_1
答案 0 :(得分:0)
FormClass(prefix="prefix_to_display")
答案 1 :(得分:0)
您可以使用auto_id
参数删除id_
。在您的视图类中:
def get_form_kwargs(self, step=None):
kwargs = super().get_form_kwargs(step)
kwargs['auto_id'] = True
return kwargs
为了摆脱X-
,您必须手动渲染字段。这可以使用自定义模板或字段定义来完成:
address_line_1 = forms.CharField(
widget=forms.TextInput(attrs={'id': 'address_line_1'})
)