Django基础阶段小结一下
类的_str_的方法:为了生成友好型“对象”
1. 单表的增删改查
1. 删和改
1. GET请求 URL传值
1. 格式
127.0.0.1:8000/delete_publisher/?name=alex&id=7
2. Django后端取值
request.GET --> 大字典
request.GET["name"]/request.GET["id"] --> key不存在就报错了
request.GET.get("name", "sb") --> 推荐用这个方法取值,sb是取不到值的话就默认该值
2. POST方法提交的数据怎么取:
request.POST.get("key")
3. ORM操作
1. 删除
1. 先找到对象,调用对象的.delete()方法
publisher_obj = models.Publisher.objects.get(id=7)
publisher_obj.delete()
或者
models.Publisher.objects.get(id=7).delete()
2. 修改
1. 找到对象,通过修改对象的属性来修改数据库中指定字段的值,要保存
publisher_obj = models.Publisher.objects.get(id=7)
publisher_obj.name = "新的出版社名字"
publisher_obj.save() --> 把修改提交到数据库
2. GET和POST
1. GET请求:
1. GET请求携带的数据都拼在了URL上
2. GET请求携带的数据有长度限制 40k
2. POST请求
1. form表单提交数据
2. 上传文件
3. 几个GET请求具体的应用场景:
1. 浏览器地址栏直接输入URL
2. 点击a标签,url可自己生成
3. 搜索引擎检索
3. request相关的知识点
1. request.method
1. GET
2. POST
2. request.POST --> 所有和post请求相关的数据
3. request.GET --> 所有和GET请求相关的数据
这是一个图书管理的案例:
1. 图书管理系统表结构设计
图书管理系统的三种角色
1. 出版社
2. 书
3. 作者
总结关系:
1. 一本书 只能 有一个出版社
2. 一本书 能有 多个作者
3. 一个作者 能写 多本书
出版社和书: 一对多 --> 外键
书和作者: 多对多 --> 用第三张表做关联
2. 查看书籍列表
3. 添加书籍
将所有的出版社在页面上以select标签的形式展示出来
4. 删除书籍
如何在后端获取要删除的是那一个书籍?
通过URL传参数的形式
5. 编辑书籍
将所有的出版社在页面上以select标签的形式展示出来
将当前编辑的书籍对象的书名和出版社在页面上展示出来
以下是注意事項:
1.这是ORM里的外键设置。publisher_id对应的是一个对象,而不是一个具体的值。用.来取具体属性的值
外键会自动帮你添加_id。所有你直接写publisher就行
这个这个Book表里的对应的字段
2.如何把修改的值提交给数据库 .save()
3.字典里通过key取value有两种方法。一种是 .[''key] 另一种.get('key') ,第一种当取值为空时会报错,第二种就不会
在大字典里name和value永远相对
设置传递的默认值就用value 效果:
4.创建新书对象,自动提交。一下两种方式都行,第一种较简洁
5.在ORM已经存值的表里在添加一个字段会出现以下图片
Django基础阶段小结一下相关推荐
- 计算机基础与应用课程小结,计算机应用基础课程小结.docx
计算机应用基础课程小结 计算机应用基础课程小结 1.计算机应用基础课程是所有专业的基础课程.掌握常用的Windows技术和学会使用常用的Office办公自动化软件及常用工具软件和掌握基本的网络和网络安 ...
- 学一点django基础
学一点Django基础 目录 文章目录 目录 一.Django框架的介绍 Django的安装 Django框架开发 创建项目的指令 Django项目的目录结构 URL 介绍 视图函数(view) Dj ...
- C++基础知识点小结
C++基础知识点小结 第一章 绪论 (1)cout 输出流的对象 (2)cin输入对象 (3)endl 输出控制符/操控符 (4)标识符 (5)命名空间(namespace) (6)左值: (7)右值 ...
- Django基础(33): 中间件(middleware)的工作原理和应用场景举例
在初级Django开发项目中,你大概率用不到中间件(Middleware).但随着项目需求越来越复杂,你就需要开始编写自己的中间件了.当你了解到Django中间件(middleware)的工作原理和作 ...
- 小酌Django1——Django基础
小酌Django1--Django基础 Python可以做:数据统计.爬虫.机器学习.人工智能- 还有Web开发:本文主要内容即以Python为基础进行简单Web应用开发: 目标: 学习Django: ...
- Django基础(35): 全局上下文处理器(Context Processors)详解及如何自定义模板上下文处理器...
Django的Context Processors的中文名字有很多种,有人翻译成文本处理器,也有人翻译成上下文处理器.小编最喜欢的翻译是全局上下文处理器,因为它的主要作用就是向模板传递需要全局使用的变 ...
- Django基础(11): 表单集合Formset的高级用法详解
Formset(表单集)是多个表单的集合.Formset在Web开发中应用很普遍,它可以让用户在同一个页面上提交多张表单,一键添加多个数据,比如一个页面上添加多个用户信息.今天小编我就介绍下Djang ...
- Java阶段小结_1
Java学习阶段小结_1 1.了解Java 1:为什么要学习Java 2:Java能干嘛 2.基础 1:标识符与变量 2:数据类型: 3:键盘录入 4:类型转换 5:运算符: 3.程序流程说明 1) ...
- 【阶段小结】协同开发——这学期的Git使用小结
[阶段小结]协同开发--这学期的Git使用小结 一.Git简介 1. Git简单介绍 2. Git工作流程以及各个区域 3. Git文件状态变化 二.Git安装&Git基本配置 三.个人踩坑 ...
最新文章
- (转载) 数组a[]={3,5,2,4,1,8},要求从a中找出所有“和”等于10的子集
- 广西互联网金融平台系列-7条奇怪的投资数据
- 【错误记录】Google Play 上架报错 ( APK 大小 | 目标 API 级别 | Google Play 帮助文档 )
- 三目运算法求一个大值,以及指定位数的应用,以及函数的声明,以及函数的嵌套,以及函数的递归,以及用递归法求阶乘
- c语言结构体与共同体课件,《结构体与共同体》PPT课件.ppt
- ECOMP已经开源成功,这次ATT准备推动白盒路由操作系统DNOS
- Android源码编译全过程记录(基于最新安卓5.1.0)【转】
- linux vim 执行shell命令行,Linux中vim和shell
- 机器学习中的相似性度量(转载)
- 蓝鳍鱼乐岿彦演讲实录:VR面临的机遇和挑战
- 51单片机简谱音乐3-音阶与频率表问题以及简谱小笔记
- Hadoop之纠删码
- 计算机是1946年由科学家发明,1946年第一台计算机叫什么
- 大学物理实验 空气比热容比的测定 数据处理
- apk+html启动页,案例——APP启动页
- matlab双边滤波处理点云,常见点云滤波算法
- 程序员用代码求救 同事“秒懂”
- 开源一对一源码,一对一直播系统如何接入码支付
- 第三届云计算大会 - 华为李三琦:云计算发展与华为运战略(转载)
- 把一元兑换成1分、2分、5分的硬币,有几种换法?