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。

相关推荐
守护安静星空7 分钟前
live555学习笔记
笔记·学习
gjc59213 分钟前
MySQL隐蔽 BUG:组合条件查询无故返回空集?深度排查与规避方案
android·数据库·mysql·bug
张雨zy16 分钟前
Vue 项目管理数据时,Cookie、Pinia 和 LocalStorage 三种常见的工具的选择
前端·javascript·vue.js
航Hang*21 分钟前
第1章:初识Linux系统——第13节:总复习②
linux·笔记·学习·centos
❀͜͡傀儡师22 分钟前
docker部署PostgreSQL数据库的监控和管理工具
数据库·docker·postgresql
五月君_23 分钟前
Nuxt UI v4.3 发布:原生 AI 富文本编辑器来了,Vue 生态又添一员猛将!
前端·javascript·vue.js·人工智能·ui
!执行34 分钟前
遇到 Git 提示大文件无法上传确实让人头疼
前端·github
a1879272183142 分钟前
MySQL 事务
数据库·mysql·事务·mvcc·acid·readview·可见性判断算法
梨落秋霜44 分钟前
Python入门篇【元组】
android·数据库·python
Caarlossss1 小时前
mybatis
java·数据库·tomcat·maven·mybatis·mybatis-spring