我有一个名为PM
的模型来创建Private Message objects
。这是:
class Pm(models.Model):
"""
Messaging System
"""
subject = models.CharField(verbose_name='Message Subject',
max_length=50, blank=False)
content = models.TextField(verbose_name='Message Content',
max_length=1000, blank=False)
to = models.ForeignKey(settings.AUTH_USER_MODEL, null=False,
blank=False,verbose_name='Target',
related_name='target')
sender = models.ForeignKey(settings.AUTH_USER_MODEL,
blank=False,verbose_name='Sender',
null=False,
related_name='source')
我可以为单个用户创建一条消息。如果我将to
字段更改为Many2Many
字段,那么我可以为多个用户创建此消息。
但我想要的是为某些用户组创建此消息。应该有一个像Programmers
这样的群组,其中包含10个用户。
我正在使用Django Admin
进行管理。
感谢
答案 0 :(得分:3)
只需将模型链接到Group
对象,如下所示:
from django.contrib.auth.models import Group
class Pm(models.Model):
# ...
group = models.ForeignKey(Group)
小注意:根据您的需要,使用您自己的群组模型创建自己的用户模型可能会更好。虽然这些内置函数非常适合开箱即用的初始化,但它们并不是非常灵活,而且主要用于管理管理站点。