以这个非常简单的形式为例:
class SearchForm(Form):
q = forms.CharField(label='search')
这会在模板中呈现:
<input type="text" name="q" id="id_q" />
但是,我想将 placeholder
属性添加到该字段,其值为 Search
,以便 HTML 看起来像:
<input type="text" name="q" id="id_q" placeholder="Search" />
最好我想通过字典或类似的东西将占位符值传递给表单类中的 CharField
:
q = forms.CharField(label='search', placeholder='Search')
最好的方法是什么?
最佳答案
看看widgets documentation .基本上它看起来像:
q = forms.CharField(label='search',
widget=forms.TextInput(attrs={'placeholder': 'Search'}))
更多的写作,是的,但分离允许更好地抽象更复杂的情况。
您也可以声明 widgets
包含 <field name> => <widget instance>
的属性直接映射到Meta
您的ModelForm
子类。
关于python - 如何在 Django 中的 CharField 上添加占位符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4101258/