我的应用程序中有以下内容:
class University(models.Model):
...
sister_university = models.OneToOneField('self', related_name =
'university_sister_university',
blank=True, null=True,
on_delete=models.SET_NULL)
Run Code Online (Sandbox Code Playgroud)
我只希望大学在这种关系的两个方向上与另一所大学有关.
例如,在数据库中,如果我选择大学A作为大学B的姐妹大学,我只希望被允许选择大学B作为大学A下的姐妹大学.但是,实际上,第二种关系没有得到强制执行.
例如:现在,在Django Admin网站下,如果我首先选择大学A作为大学B的姐妹大学,我仍然可以选择任何其他大学作为大学A姐妹大学的对象.我不仅限于选择大学B.
是否可以在数据库级别强制执行该唯一性?有没有更好的方法来完成我想要做的事情?