首页 > 其他分享 >Django一对多、多对多的增删改查

Django一对多、多对多的增删改查

时间:2024-03-20 09:02:05浏览次数:26  
标签:改查 publish Django book 增删 查询 id select

一对多的增删改查

多对多的增删改查

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

正反向概念

书和出版社,外键字段建立在书表里
那由书查出版社就是正向,而出版社查书就是反向
正向:外键字段在我手里,从我查你
反向:外键字段不在我手里,我查你

多表查询
子查询(基于对象的跨表查询)
select * from publish
where book_id = (select id from book where id=1)
联表查询(基于双下划线的跨表查询)
select book.name, publish.name from book inner join publish on book.publish_id=publish.id
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
只需要掌握正反向的概念,以及下划线,就可以无限制跨表
在这里插入图片描述

标签:改查,publish,Django,book,增删,查询,id,select
From: https://blog.csdn.net/wjhltl/article/details/136829163

相关文章

  • Django项目记录
    在线教育平台Django项目#manage.pyos.environ.setdefault("DJANGO_SETTINGS_MODULE","mxonline.settings")是什么意思?这行代码是用于设置Django项目的配置模块。在Django项目中,有一个名为settings.py的文件,其中定义了项目的各种配置选项。DJANGO_SETTINGS_MODULE是一个环境变......
  • 数据库中利用二进制实现多个布尔属性的增删改查
    需求背景业务场景中经常需要一些布尔型的属性来标记数据状态,如果每个属性值都新增一个数据库字段来保存会造成空间上的浪费,在工作中进行建模设计时难免会想到用二进制来节省空间,以整形32位为例,去除最高位的符号位总共可以用来保存31个布尔属性值。实现细节为方便讲解,这里......
  • django版本区别
     """1.django1.X路由层使用的是url方法而在django2.Xhe3.X版本中路由层使用的是path方法url()第一个参数支持正则path()第一个参数是不支持正则的写什么就匹配什么如果你习惯使用path那么也给你提供了另外一个方法fromdjango.urlsi......
  • ubuntu22.04部署django+uwsgi+nginx上线站点
    系统默认是3.10的python版本,不支持pip,需要先安装pip常用的命令pipinstallsomepackage-ihttps://pypi.doubanio.com/simple/#pip安装使用豆瓣源比较快sudochownubuntu:ubuntu/opt/wwwroot/mysite-R#可更改文件夹对应的用户,避免总是提示无权限被禁止项目默认部署在/o......
  • Django-域名管理项目
    1,相关版本vscoe:1.82.12,cmd命令行创建并激活虚拟机环境创建虚拟环境python.exe-mvenvdjango-env激活并进入虚拟环境django-env/Script/active3,vscode终端创建并激活虚拟环境执行激活命令active报错时的处理办法https://blog.csdn.net/weixin_44548098/ar......
  • Django路由层
    mysqlclient项目同名文件夹下__init__.py这个文件中添加以下两句话:(数据库8.0时,进行数据库迁移时报错为2026的解决方法)importpymysqlpymysql.install_as_MySQLdb()路由层path(路由,视图函数,别名)关于url后面加/的问题:有时候你没有加/,django也会自动帮你加......
  • Django连接数据库操作
    只能运行一个django项目从计算机名称开始一直到项目文件名,都不能包含中文不管是get请求还是post请求,都是朝一个地址发起执行的,那get请求和post请求对应的处理肯定要不一样request对象request.method:返回请求方式,并且全大写的字符串形式request.POST:获取用户提交p......
  • 【20.2】Django框架Form组件之渲染HTML代码
    【一】引入forms组件只会帮我们渲染用户输入的标签(input/select...)【二】书写forms组件forms.pyfromdjangoimportforms#定义form类classMyForm(forms.Form):#username:字符串类型最小三位,最大八位username=forms.CharField(max_length=8,min......
  • 【20.1】Django框架Form组件之常用字段及插件
    【零】引入创建Form类时主要涉及到【字段】和【插件】字段用于对用户请求数据的验证插件用于自动生成HTML;【一】Field.clean(value)注意:这里说的是字段Field的clearn方法,不是表单Form的clean方法。虽然表单字段的Field类主要使用在Form类中,但也可以直接实例化它们来......
  • 【20.4】Django框架Form组件之钩子函数(Hook)
    【一】什么是钩子函数在forms组件中钩子函数(Hooks)是用来在特定事件发生时执行自定义逻辑的函数。它们提供了一种创建交互性和动态行为的方式,并可以用于处理表单的各种状态和数据。【二】常见的钩子函数【1】onInputChange当输入框的值发生变化时触发。你可以通过这个......