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。

相关推荐
2301_81767226几秒前
C#怎么实现RSA非对称加密 C#如何用RSA算法进行公钥加密私钥解密和数字签名【安全】
jvm·数据库·python
_李小白1 分钟前
【OSG学习笔记】Day 52: FadeText
笔记·学习
Greyson12 分钟前
Go语言中纯函数调用的并发安全性详解
jvm·数据库·python
InfinteJustice2 分钟前
怎么在Node.js中管理MongoDB的数据库迁移版本_使用migrate-mongo进行类似Flyway的版本演进控制
jvm·数据库·python
CompaqCV6 分钟前
OpencvSharp 算子学习教案之 - Cv2.Add
学习·c#·opencvsharp算子
W.A委员会10 分钟前
大数据渲染
前端
2301_8176722611 分钟前
如何在 HTML 中正确使用 exif-js 库读取图片 EXIF 元数据
jvm·数据库·python
CompaqCV11 分钟前
OpencvSharp 算子学习教案之 - Cv2.Subtract 重载3
学习·c#·opencvsharp算子·opencv教程
五仁火烧11 分钟前
前端不传文件,也能用 multipart/form-data
前端·javascript·vue.js·node.js
2401_8326355813 分钟前
如何用 credentials 参数决定 Fetch 是否携带本地的 Cookie
jvm·数据库·python