是否可以覆盖Django管理员中的单个文本字段?

时间:2012-03-27 19:42:50

标签: python django

我希望只覆盖Django管理员中的单个TextField,但不会影响其他文本字段,我希望这是默认设置。这是我到目前为止所拥有的。

formfields_overrides={
    models.TextField: {'widget': Textarea(attrs={'rows':1, 'cols':40})}
}

1 个答案:

答案 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