3 回答

TA貢獻1744條經(jīng)驗 獲得超4個贊
class MyForm(forms.Form):
myfield = forms.CharField(widget=forms.TextInput(attrs={'class' : 'myfieldclass'}))
要么
class MyForm(forms.ModelForm):
class Meta:
model = MyModel
def __init__(self, *args, **kwargs):
super(MyForm, self).__init__(*args, **kwargs)
self.fields['myfield'].widget.attrs.update({'class' : 'myfieldclass'})
要么
class MyForm(forms.ModelForm):
class Meta:
model = MyModel
widgets = {
'myfield': forms.TextInput(attrs={'class': 'myfieldclass'}),
}
---編輯---
以上是對完成所要求內(nèi)容的原始問題的代碼進行的最簡單的更改。如果您在其他地方重復(fù)使用表格,還可以避免重復(fù)。如果您使用Django的as_table / as_ul / as_p表單方法,則您的類或其他屬性將正常工作。如果您需要完全控制以完全自定義渲染,則需要明確記錄在案
-編輯2 ---
添加了更新的方法來為ModelForm指定小部件和屬性。
添加回答
舉報