类的_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基础阶段小结一下相关推荐

  1. 计算机基础与应用课程小结,计算机应用基础课程小结.docx

    计算机应用基础课程小结 计算机应用基础课程小结 1.计算机应用基础课程是所有专业的基础课程.掌握常用的Windows技术和学会使用常用的Office办公自动化软件及常用工具软件和掌握基本的网络和网络安 ...

  2. 学一点django基础

    学一点Django基础 目录 文章目录 目录 一.Django框架的介绍 Django的安装 Django框架开发 创建项目的指令 Django项目的目录结构 URL 介绍 视图函数(view) Dj ...

  3. C++基础知识点小结

    C++基础知识点小结 第一章 绪论 (1)cout 输出流的对象 (2)cin输入对象 (3)endl 输出控制符/操控符 (4)标识符 (5)命名空间(namespace) (6)左值: (7)右值 ...

  4. Django基础(33): 中间件(middleware)的工作原理和应用场景举例

    在初级Django开发项目中,你大概率用不到中间件(Middleware).但随着项目需求越来越复杂,你就需要开始编写自己的中间件了.当你了解到Django中间件(middleware)的工作原理和作 ...

  5. 小酌Django1——Django基础

    小酌Django1--Django基础 Python可以做:数据统计.爬虫.机器学习.人工智能- 还有Web开发:本文主要内容即以Python为基础进行简单Web应用开发: 目标: 学习Django: ...

  6. Django基础(35): 全局上下文处理器(Context Processors)详解及如何自定义模板上下文处理器...

    Django的Context Processors的中文名字有很多种,有人翻译成文本处理器,也有人翻译成上下文处理器.小编最喜欢的翻译是全局上下文处理器,因为它的主要作用就是向模板传递需要全局使用的变 ...

  7. Django基础(11): 表单集合Formset的高级用法详解

    Formset(表单集)是多个表单的集合.Formset在Web开发中应用很普遍,它可以让用户在同一个页面上提交多张表单,一键添加多个数据,比如一个页面上添加多个用户信息.今天小编我就介绍下Djang ...

  8. Java阶段小结_1

    Java学习阶段小结_1 1.了解Java 1:为什么要学习Java 2:Java能干嘛 2.基础 1:标识符与变量 2:数据类型: 3:键盘录入 4:类型转换 5:运算符: 3.程序流程说明 1) ...

  9. 【阶段小结】协同开发——这学期的Git使用小结

    [阶段小结]协同开发--这学期的Git使用小结 一.Git简介 1. Git简单介绍 2. Git工作流程以及各个区域 3. Git文件状态变化 二.Git安装&Git基本配置 三.个人踩坑 ...

最新文章

  1. (转载) 数组a[]={3,5,2,4,1,8},要求从a中找出所有“和”等于10的子集
  2. 广西互联网金融平台系列-7条奇怪的投资数据
  3. 【错误记录】Google Play 上架报错 ( APK 大小 | 目标 API 级别 | Google Play 帮助文档 )
  4. 三目运算法求一个大值,以及指定位数的应用,以及函数的声明,以及函数的嵌套,以及函数的递归,以及用递归法求阶乘
  5. c语言结构体与共同体课件,《结构体与共同体》PPT课件.ppt
  6. ECOMP已经开源成功,这次ATT准备推动白盒路由操作系统DNOS
  7. Android源码编译全过程记录(基于最新安卓5.1.0)【转】
  8. linux vim 执行shell命令行,Linux中vim和shell
  9. 机器学习中的相似性度量(转载)
  10. 蓝鳍鱼乐岿彦演讲实录:VR面临的机遇和挑战
  11. 51单片机简谱音乐3-音阶与频率表问题以及简谱小笔记
  12. Hadoop之纠删码
  13. 计算机是1946年由科学家发明,1946年第一台计算机叫什么
  14. 大学物理实验 空气比热容比的测定 数据处理
  15. apk+html启动页,案例——APP启动页
  16. matlab双边滤波处理点云,常见点云滤波算法
  17. 程序员用代码求救 同事“秒懂”
  18. 开源一对一源码,一对一直播系统如何接入码支付
  19. 第三届云计算大会 - 华为李三琦:云计算发展与华为运战略(转载)
  20. 把一元兑换成1分、2分、5分的硬币,有几种换法?

热门文章

  1. 目标检测算法(YOLOv4)
  2. 【狼人杀plus全记录】没有公网IP照样完美解决微信小程序本地测试问题,超简单方法!
  3. 大华股份2013届校园招聘软件算法类试题D卷
  4. 智慧检务大数据平台 电子检务大数据整体解决方案解决方案
  5. php验证手机号和身份证号
  6. 关于浙江22年下半年教师资格证面试报名注册时间
  7. 浅谈linux - samba实现linux与windows文件共享
  8. jQuery学习笔记整理---03部分
  9. Qbao Network携手FinCredit Protocol启动大规模空投
  10. bit byte K M G