django_models_关系一对多
关系数据库
关系数据库的威力体现在表之间的相互关联。 Django 提供了三种最常见的数据库关系:多对一(many-to-one),多对多(many-to-many),一对一(one-to-one)。
多对一关系
Django 使用 django.db.models.ForeignKey
定义多对一关系。 和使用其它Field
类型一样:在模型当中把它做为一个类属性包含进来。
ForeignKey
需要一个位置参数:与该模型关联的类。
比如,一辆Car
有一个Manufacturer
— 但是一个Manufacturer
生产很多汽车(Car),每一辆Car
只能有一个Manufacturer
— 使用下面的定义:
from django.db import modelsclass Manufacturer(models.Model):# ...passclass Car(models.Model):manufacturer = models.ForeignKey(Manufacturer, on_delete=models.CASCADE)# ...
你还可以创建递归关联关系(与自身具有多对一关系的对象)和与尚未定义的模型的关系;有关详细信息,请参见模型字段参考
建议你用被关联的模型的小写名称做为ForeignKey 字段的名字(例如,上面manufacturer)。 当然,你也可以起别的名字。 例如:class Car(models.Model):company_that_makes_it = models.ForeignKey(Manufacturer,on_delete=models.CASCADE,)# ...
注意:
在模型类中,一对多,外检模型定义在多的一方。 ForeignKey 字段
提示:
ForeignKey
字段还接受许多别的参数,在模型字段参考有详细介绍。 这些选项有助于确定关系如何工作;都是可选的。
访问反向关联对象的细节,请见反向查询关联关系的示例。
示例代码,请见多对一关联关系示例。
转载于:https://www.cnblogs.com/Xingtxx/p/11009881.html
django_models_关系一对多相关推荐
- sql语句之多表关系 一对多 多对多
多表的关系介绍 在实际的开发过程中,项目一定是有多张表的,且这些表之间是都有关系的 表与表之间的关系分类:一对一 一对多 多对多 一对一:A表的一行对应B表的一行,反之也成立,此时,两张表可以合并成一 ...
- JPA(三)之实体关系一对多(多对一)
1.背景介绍: 对于购买商品时,订单信息(Order)和订单商品信息(OrderItem)的关系就是一对多的关系. 2.实体bean: Order.java代码 ? 1 2 3 4 5 6 7 ...
- mysql表一对多关系,mysql表与表之间的关系(多对多,一对多)
#创建数据库 CREATE DATABASE day15; #使用 USE day15; #创建表 CREATE TABLE test1( id INT PRIMARY KEY AUTO_INCREM ...
- Php Laravel框架 多表关系处理 之 Eloquent一对多关系处理
Php Laravel框架 多表关系处理 之 Eloquent一对多关系处理 本博文主要介绍 Laravel 框架中 Eloquent 对一对多关系的处理以及在 Laravel Administra ...
- Hibernate_2_Hibernate中对象状态及转化_一级缓存_Session详解_HQL/SQL/Criteria_一对多关系_级联操作
Hibernate中的对象状态 在Hibernate中持久化对象具有三种状态: 瞬时态, 持久态, 游离态. 瞬时态: 对象没有与Hibernate产生关联(transient,session中没有缓 ...
- java 一对多、多对多关系示例
一对多 生活中常见一对多关系的例子,如一个老师教多个学生,一个学生属于一个老师,那么这就是一个典型的一对多关系,可以通过集合进行关系的表示. 定义一个学生类 public class Student ...
- mysql好友关系数据表设计_即时通讯数据库好友关系(一对多)应该怎样设计?...
[MYSQL里面有如下的表 user:id username photo:id name photo_favour(图片收藏关系表):photo_id user_id假设这几个表都相当大,需要进行分 ...
- Hibernate笔记整理3(一对多关系,保存删除操作)
主要是体现数据之间的关系,一对多之间的关系,保存与删除 两个实体类,一个客户,一个联系人,其中是一对多的关系,一个客户可以对应多个联系人,实体类如下,均省略setget,toString等方法: Cu ...
- Hibernate映射关系
为什么80%的码农都做不了架构师?>>> 前言 Hibernate Annotation关系映射有下面几种类型: 一对一外键关联映射(单向) @OneToOne(cascade ...
最新文章
- 数据可视化与数据预处理
- Arduino产生PWM的3种方法
- 关于Hadoop多用户管理支持客户端远程操作的理论总结
- 翻译:打造Edge渲染内核的浏览器
- Android 3D emulation 架构理解
- 读取设置config.ini配置
- 解决Windows 7删除执行过的 EXE、Bat文件有延迟的问题
- Spring Boot整合批量文件下载功能
- day14 Python函数
- 项目启动会ppt_项目经理实战篇-项目启动会
- 我行贿了 I Paid A Bribe! --印度IPAB中国官方网站 - 民间反腐网站“我行贿了”网址大盘点...
- linux sd卡空间,充分利用树莓派中的SD卡空间
- 行业发展 | 雷达信号处理领域面临的重大问题
- IP66 IP67 防护等级介绍
- 质点碰撞和卢瑟福公式
- 代理的原理及类型总结
- cad文字递增快捷键_史上最全CAD快捷键命令大全(图文版、文字版、键盘版)
- 数据结构课程设计(选):连连看
- 区块链教程之Bitcoin公钥和地址生成
- 如何学计算机打字,电脑如何快速学会打字