如何在Django的CharField上添加占位符?

以这个非常简单的形式为例:

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')

做到这一点的最佳方法是什么?

回答:

q = forms.CharField(label='search', 

widget=forms.TextInput(attrs={'placeholder': 'Search'}))

是的,更多的写作,但是分离可以更好地抽象更复杂的情况。

你也可以声明widgets包含一个属性<field name> => <widget instance>直接映射Meta你的ModelForm子类。

以上是 如何在Django的CharField上添加占位符? 的全部内容, 来源链接: utcz.com/qa/418567.html

回到顶部