Django-orm-自关联
Django-orm-自关联
拓展博客:https://www.cnblogs.com/Kingfan1993/p/9936541.html
https://www.cnblogs.com/tangda/p/12090669.html
数据库展示:
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\)
什么是自关联?
- 表内自关联是指表内数据相关联的对象和表是相同字段,这样我们就直接用表内关联将外键关联设置成自身表的字段。同样表内关联也分一对多字段和多对多字段
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\)
最典型的自关联模型就是地区表。省市县都在一张表里面。省的pid为null,市的pid为省的pid,县的pid为市的ID。我们今天的例子是部门表,和地区表同理·····
自关联主要靠数据库中自关联表的第一列from 和 第二列to 定义主从。
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\)
model.py
from django.db import models
class Sections(models.Model):
section = models.CharField(max_length=20, verbose_name='部门')
# 自关联部门表
two_section = models.ForeignKey(to='self', null=True, on_delete=models.CASCADE)
# pcomment = models.ForeignKey(to='self', null=True)
class Meta:
db_table = 'tb_section'
verbose_name = "部门"
从小白到大神的蜕变~~