ホームページ  >  に質問  >  本文

python中怎么override父类的class Meta?

这是我的一个父类

class BlogCommentForm(forms.ModelForm):

    class Meta:
        model = BlogComment
        fields = ['user_name', 'body']

        widgets = {
            'user_name': forms.TextInput(attrs={
                'required': 'required',
                # ...还有很多其他属性
            }),
            'body': forms.Textarea(attrs={
                'required': 'required',
                # ...还有很多其他属性
            }),
        }

这是我的子类

class SubCommentForm(BlogCommentForm):

    class Meta:
        # SubComment也是继承自BlogComment
        model = SubComment

        fields = ['user_name', 'body']
        widgets = {
            'user_name': forms.TextInput(attrs={
                'required': 'required',
                # ...还有很多其他属性
            }),
            'body': forms.Textarea(attrs={
                'required': 'required',
                # ...还有很多其他属性
            }),
        }

现在我想简化一下代码,因为我的SubComment也是继承自BlogComment,所以对于SubCommentForm这个子类我只想让下model = SubComment,对于fields和widgets属性,我不想增加或者任何内容,请问我应该怎样做呢?

高洛峰高洛峰2895日前1045

全員に返信(1)返信します

  • 欧阳克

    欧阳克2016-11-15 17:04:30

    你可以将那2个属性忽略不写,默认会自动继承父类的东西,只是模型model哪里改成你要的模型。

    返事
    0
  • キャンセル返事