您好我有这样的模特:
class Team(models.Model):
owner = models.ForeignKey(User)
members = models.ManyToManyField(User)
现在一个所有者可以拥有多个团队,但特定成员只能属于一个团队。因此,假设有一个成员John
的团队,用户无法再次创建具有相同成员的团队。
为此,我正在尝试添加自定义模型字段验证:
def clean_fields(self, exclude=None):
super(MentorTeam, self).clean_fields(exclude=exclude)
self.candidates # This returns error because the team instance is not saved yet.
我该如何进行验证?
答案 0 :(得分:0)
根据定义,ManyToMany
关系意味着成员可以属于许多团队。
你应该做的是从Team
模型对User
做一个ForeignKey:
class User(models.Model):
team = models.ForeignKey(Team, related_name='members')
...
希望它有所帮助!