Django+Vue3前后端分离学习(三)(创建表的注意事项)

复制代码
class OADepartment(models.Model):
    name = models.CharField(max_length=100)
    intro = models.CharField(max_length=200)
    # leader
    leader = models.OneToOneField(OAUser, null=True, on_delete=models.SET_NULL, related_name='leader_department', related_query_name='leader_department')
    # manager
    manager = models.ForeignKey(OAUser, null=True, on_delete=models.SET_NULL, related_name='manager_departments', related_query_name='manager_departments')

models.OneToOneField()实现一对一的关联;

models.ForeignKey()实现一对多的关联;

models.ManyToManyField()实现多对多的关联。

related_name参数用于指定反向关系的名称。当你在一个模型中使用ForeignKey或OneToOneField等关系字段指向另一个模型时,Django会自动为你生成一个反向关系。这个反向关系的名称就是你在关系字段上指定的related_name。

related_query_name参数用于指定在查询时使用的名称。当你使用一个模型进行查询时,Django会自动为你生成相关的查询。这些查询的名称就是你在关系字段上指定的related_query_name。

相关推荐
G.O.G.O.G1 分钟前
LeetCode SQL 从入门到精通(MySQL)05(下)
数据库·sql·oracle
yingyima4 分钟前
AWK 速查手册:不仅仅是文本处理,更是性能与简洁的抉择
前端
悟空瞎说4 分钟前
WebSocket 前端丢包处理实战:原理与完整代码实现
前端
秋天的一阵风6 分钟前
✨ 原来文本转换可以这么丝滑!UnifiedJS 实战指南来了
前端·github·markdown
其实防守也摸鱼7 分钟前
运维--安全与数据库
网络·数据库·学习·安全·安全威胁分析·数据库架构·软件安全
南川琼语17 分钟前
HTTP——AJAX
前端·javascript·ajax
Rsun0455124 分钟前
MySQL 中什么是回表?
数据库·mysql
pop_xiaoli34 分钟前
【iOS】YYModel源码学习
学习·ios·objective-c·cocoa
用户479492835691538 分钟前
专升本前端毕业 1 年,从初创到大厂,我的开源项目上了 github trending,顺便聊聊做开源的收获
前端·后端·github
Ashley的成长之路42 分钟前
前端性能优化实战手册·第1篇:从 Lighthouse 60 到 95 的完整路径
前端·性能优化