当django创建表单时,输入的id如下:
<input id="id_name"..../>
如何更改ID,让我们说“测试”?
必须以某种方式处于form.py中,对吧?
class ReviewForm (forms.ModelForm):
def __init__(self, *args, **kwargs):
super(ReviewForm, self).__init__(*args, **kwargs)
self.fields['location']=forms.CharField(label='', required=False)
self.fields['review']=forms.CharField(label='', required=False)
答案 0 :(得分:4)
当您实例化表单时,您需要将auto_id
关键字设置为格式为'%s'的字符串来调用它,该字符串将替换为字段名称。
所以你想要这样做:
ReviewForm(auto_id="test_%s")
您的ID将以test_
作为前缀生成,后跟字段名称。
直接来自Django 1.8文档:
使用Form构造函数的auto_id参数来控制id和label行为。
...
如果将auto_id设置为包含格式字符'%s'的字符串,则表单输出将包含标记,并将根据格式字符串生成id属性。例如,对于格式字符串'field_%s',名为subject的字段将获得id值'field_subject'。
答案 1 :(得分:0)
我找到了一种方法,解释here
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %