我希望只覆盖Django管理员中的单个TextField,但不会影响其他文本字段,我希望这是默认设置。这是我到目前为止所拥有的。
formfields_overrides={
models.TextField: {'widget': Textarea(attrs={'rows':1, 'cols':40})}
}
答案 0 :(得分:2)
您可以在添加/更改页面上specify a form to be used。默认情况下,这是一个普通的ModelForm
。
假设您的模型名为MyModel
,并且您想要更改field1
的小部件,而不是field2
的小部件:
class MyModelForm(forms.ModelForm):
class Meta:
model = MyModel
widgets = {
'field1': Textarea(attrs={'rows':1, 'cols':40}),
}
...
class MyModelAdmin(admin.ModelAdmin):
form = MyModelForm