最近在使用django开发的时候,遇到了很多问题,特此记录在此,希望对以后的同学有所帮助。 一.django的ManyToManyField,当关联自身时,实现单向关联。 比如代码如下:
class MManConfType(models.Model): linkconftype = models.ManyToManyField(‘self’,null=True,blank=True)
在这种情况下,当类型1关联了类型2的时候,那么类型2也一定关联了类型1,所以linkconftype就会始终是大于两条记录 解决的方法就是,增加symmetrical=False的定义,即:
linkconftype = models.ManyToManyField(‘self’,symmetrical=False,null=True,blank=True)
官网上的解释如下:
ManyToManyField.symmetrical Only used in the definition of ManyToManyFields on self. Consider the following model ...