在同一张表进行父子查询,就向下表一样,我想问一下下面的表的数据如何进行存储与关联,
上面图的原址
https://blog.csdn.net/weixin_41358807/article/details/114643157
在同一张表进行父子查询,就向下表一样,我想问一下下面的表的数据如何进行存储与关联,
你应该想要的是model的自关联吧,假设上表为Category,参考如下:
class Category(models.Model):
id = models.BigAutoField(primary_key=True)
parent_id = models.BigIntegerField()
name = models.CharField("名称")
status = models.SmallIntegerField()
# 定义一对一的自关联
Category = models.OneToOneField('self', null=True, on_delete=models.CASCADE, to_field="parent_id")
# 定义多对一的自关联
# Category = models.ForeignKey('self', on_delete=models.CASCADE, to_field="parent_id")
# 定义多对多的自关联,多对多的情况可以通过hrough 参数指定多对多关系使用哪个中间模型以及相应的关联字段,具体可参照文档
# Category = models.ManyToManyField('self', null=True)
具体也可参照文档中关系字段和关联关系的相关说明