在我的应用程序中,我添加了一个简单的消息服务,允许用户向系统上的其他用户的子集发送消息:
from django.db import models
from django.contrib.auth.models import User
class Message(models.Model):
timestamp = models.DateTimeField()
sender = models.ForeignKey(User)
recipients = models.ManyToManyField(User)
text = models.CharField(max_length=1000)
def __unicode__(self):
return '%s %s: %s' (self.sender.first_name,self.sender.last_name,self.timestamp)
class Meta:
ordering = ('timestamp')
但是,我想记录每个用户是否已阅读该消息,因此需要在保持多对多关系的表中添加一个布尔字段。
我应该通过显式添加另一个模型并仅使用ForeignKey()来实现这一点,还是有更多'django'的方法呢?
由于
答案 0 :(得分:1)
没关系,我的谷歌搜索能力很弱,只是在文档中找到了正确的位置:
http://docs.djangoproject.com/en/dev/topics/db/models/#extra-fields-on-many-to-many-relationships