如何限制Django 2.2表单中的字段?

时间:2019-04-07 10:00:25

标签: django django-forms

我在Forms.ModelForm中显示的限制字段上遇到问题。

我使用Django 2.2

目前我有

models.py

class MyModel(models.Model) :
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    justchar = models.CharField(max_length=20, blank=True, null=True)

admins.py

class MyModelAdmin(admin.ModelAdmin) :
    form=MyModelForm

admin.site.register(MyModel,MyModelAdmin)

form.py

class MyModelForm(forms.ModelForm) :
    class Meta:
        fields = ['user']

但是表格仍然显示所有字段。 我也尝试过“排除”,但结果相同

1 个答案:

答案 0 :(得分:3)

您不需要表格。实际上,作为管理员文档explicitly state,模型表单中的fields属性在管理员中被忽略。

相反,只需直接在管理类上设置fields

class MyModelAdmin(admin.ModelAdmin) :
    fields = ['user']

admin.site.register(MyModel,MyModelAdmin)