Django ManyToManyField 字段数据关联
表结构
先看一段代码
1
2
3
4
5
6
7
8
9class People(models.Model):
user = models.ForeignKey(User, verbose_name='系统关联', on_delete=False, null=True, blank=True)
birth_death = models.CharField('生卒', max_length=32, default='')
name = models.CharField('姓名', max_length=64)
address = models.CharField('地址', max_length=256, default='')
desc = models.TextField('介绍', null=True, blank=True)
childes = models.ManyToManyField('self', verbose_name='后辈')
class Meta:
verbose_name = '门人'
讨论的主要字段就一个childes
多对多数据,像多对多这个属性,在关系型数据库中的应用应该还是比较多的,平时使用应该比较少使用多对多自己的情况。 然而我这里用到了,遇到一些问题,供大家参考
测试一下
1
2
3
4
5p1 = People.objects.create(name='p1')
p2 = People.objects.create(name='p2')
p2.childes.add(p1)
p2.childes.all() # <QuerySet [<People: People object (1)>]> ....... 1
p1.childes.all() # <QuerySet [<People: People object (2)>]> ....... 2