如何在Django的Group Model中添加新字段? 使用像
这样的东西from django.contrib.auth.models import Group
g = Group.objects.get(pk=1)
g.extra_field = "something"
g.save()
这是可能的吗?
修改
我需要一个持续的额外字段。
答案 0 :(得分:10)
这不在文档中,但在你的models.py或init add中使用(预先对猴子修补基本了解)很好:
from django.contrib.auth.models import Group
Group.add_to_class('foo', bar)
其中bar可以是任何python对象(或方法),例如
def bar(self):
return self.attr * 2
或使用字段映射:
Group.add_to_class('foo', models.RegexField(r'^hello$'))
答案 1 :(得分:2)
我遇到了同样的问题。我想在Groups中添加一个额外的字段。它对我有用 - Monkey patching