如何从Model._meta.fields中删除字段

时间:2014-07-24 15:22:42

标签: python django

我使用add_to_class方法向auth.Group模型添加了一个字段,如下所示:

Add extra Fields to Django to Django Auth Groups

我在models.py中添加了这个:

Group.add_to_class('type', models.CharField(max_length=100))

当我这样做时,看起来该字段已添加到模型类中而不是作为db字段...所以当我尝试访问Group的管理页面时,它表示我的新字段不存在。经过一些研究后,看起来像使用这种方法向auth.Group添加字段也不是很好。

我想要做的是删除我添加的新字段,但我不知道如何。根据我对这个答案的理解:

Delete field from standard Django model

我必须从Model._meta.fields列表中删除该字段,但我不知道如何。

1 个答案:

答案 0 :(得分:0)

试试这个:

for field in ModelName._meta.fields:
  if field.name == 'unwanted_field_name':
    ModelName._meta.fields.remove(field)