我有一个名为考试的模型。每个考试都有一组称为参与者的用户。我发现在 Django 中保留此类设置的唯一方法是在用户模型中添加一个字段。但我更愿意将这个模型写得尽可能独立,所以如果以后我想再次使用它,我可以在不改变我的用户模型的情况下做到这一点。那么如何在不手动修改用户模型字段的情况下处理这样的设置呢?
问问题
99 次
1 回答
1
关于您的评论,您可以这样做:
class Exam(models.Model):
participants = models.ManyToMany(settings.AUTH_USER_MODEL, through='Participation')
class Participation(models.Model)
user = models.OneToOneField(settings.AUTH_USER_MODEL)
exam = models.ForeignKey('Exam')
active = models.BooleanField(default=False)
另一种选择是使用 Django 的limit_coices_to。它不是交易保存,但可能会完成这项工作。您只会限制对所有不相关对象的选择。
于 2015-03-13T15:57:47.947 回答