内容回顾

1.django处理请求的流程:

1. 在浏览器的地址栏输入地址,回车发get请求;
2. wsgi模块接收请求;
3. 在urls.py文件中匹配地址,找到对应的函数;
4. 执行函数,返回响应。 2.发请求的方式: 1. 输入地址 —— GET
2. form 默认是get
3. form 发post请求
4. a标签 get 3.函数的返回值 HttpResponse('显示的内容') —— 》 字符串 render(request,'HTML文件名', { 'k1': v1 } ) —— 》 完整的HTML页面 redirect('要跳转的地址') ——》 重定向 Location: ‘'要跳转的地址’ 4.外键 表示多对一的关系 for book in Book.objects.all(): # 所有的书籍对象
book.id # 主键
book.name # 名称
book.pub # 书籍关联的出版社对象
book.pub_id # book表中对应出版社的ID # 增加
Book.objects.create(name='xxxx',pub_id='111')
Book.objects.create(name='xxxx',pub=pub_obj)
# 删除
Book.objects.get(pk=1).delete()
Book.objects.filter(pk=1).delete()
# 编辑
book_obj.name = 'new name'
book_obj.pub_id = '11'
book_obj.pub =pub_obj
book_obj.save() 5.模板的语法 {% if xxx == xxx %} xxxx {% elif 条件 %} www {% else %} xxx {% endif %} 今日内容 多对多的关系 作者的增删改查 model: # 作者
class Author(models.Model):
name = models.CharField(max_length=32, unique=True)
books = models.ManyToManyField('Book') 展示: for author in all_authors:
print(author)
print(author.pk)
print(author.name)
print(author.books, type(author.books)) # 多对多关系管理对象
print(author.books.all(), type(author.books.all())) # 多对多关系管理对象
print('*' * 30) 增加: name = request.POST.get('name')
books_id = request.POST.getlist('books_id') # 插入到数据库中
author_obj = models.Author.objects.create(name=name)
# 绑定书籍和作者的关系
author_obj.books.set(books_id) 正向查询: 多对多字段在作者表中: 作者 ——》 书籍 author_obj.books ——》 多对多的管理对象 author_obj.books.all() ——》 当前作者所关联的所有书籍对象 反向查询: 书籍 ——》 作者 book_obj.author_set ——》 多对多的管理对象 book_obj.author_set .all() ——》 当前书籍所关联的所有作者对象

day61 Pyhton 框架Django 04的更多相关文章

  1. day60 Pyhton 框架Django 03

    day61 内容回顾 1.安装 1. 命令行: pip install django==1.11.18 pip install django==1.11.18 -i 源 2. pycharm sett ...

  2. pyhton框架Django之cookie和session

    一,cookie和session的理解 cookies 是浏览器为 Web 服务器存储的一小段信息. 每次浏览器从某个服务器请求页面时,它向服务器回送之前收到的cookies.它保存在浏览器下的某个文 ...

  3. day64 Pyhton 框架Django 07

    day67 内容回顾 视图 1. CBV 定义 from django.views import View class Addpub(View): def get(self,request): sel ...

  4. day63 Pyhton 框架Django 06

    内容回顾 1.装饰器 装饰器:是一个闭包函数,在不改变原函数的代码和调用方式的基础上,给原函数增加功能. def wrapper(func): def inner(*args,**kwargs): # ...

  5. day62 Pyhton 框架Django 05

    内容回顾 1.变量 render(request,'模板文件名',{ k1:v1 }) {{ k1 }} {{ list.0 }} {{ dict.key }} {{ dict.keys }} {{ ...

  6. day58 Pyhton 框架Django 01

    内容回顾 python基础    网路编程    并发编程    数据库    前端     osi7层           tcp/ip 5层模型    应用层    表示层             ...

  7. python运维开发(十七)----jQuery续(示例)web框架django

    内容目录: jQuery示例 前端插件 web框架 Django框架 jQuery示例 dom事件绑定,dom绑定在form表单提交按钮地方都会绑定一个onclick事件,所有查看网站的人都能看到代码 ...

  8. Web框架——Django笔记

    Web框架--Django笔记 MVC和MTV MVC:Model.View.Controller MTV:Model.Template.View Django--MTV 1.创建Django程序   ...

  9. Python3.5学习十八 Python之Web框架 Django

    Python之Web框架: 本质:Socket 引用wsgiref创建web框架 根据web框架创建过程优化所得: 分目录管理 模板单独目录 执行不同函数单独存入一个方法py文件 Web框架的两种形式 ...

随机推荐

  1. HTTP走私

    干货 https://paper.seebug.org/1048/

  2. Linux:配置apache支持php

    对apache的主配置文件进行修改 vi /application/apache/conf/httpd.conf 1.增加下面内容 AddType application/x-httpd-php .p ...

  3. Linux下 ls 命令的高级用法8例

    Linux下 ls 命令的高级用法8例 在Linux下,ls这个命令大家肯定太熟悉了,良许相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几百次.但是,除了 ls -l 以外,你还 ...

  4. Docker 学习笔记一

    Docker 学习笔记一 1.Docker是什么?         Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源.让开发者打包他们的应用以及依赖包到一 ...

  5. sudo提权,ansible批量给所有主机创建系统账户,授权

    sudo(superuser or another do)让普通用户可以以超级管理员或其他人的身份执行命令. sudo基本流程如下: 1.管理员需要先授权(修改/etc/sudoers文件) 2.普通 ...

  6. Unity接入多个SDK的通用接口开发与资源管理(一)

    每一款游戏都有接入多个SDK的需求.当接入多个SDK时会面临两个问题: (1)代码层面:每个SDK都有调用各自功能的方法,我们需要统一管理每个SDK提供的方法,这样会使每个SDK调用方便,使代码整洁易 ...

  7. 修改mysql、sqlserver数据库默认用户,不允许为root、sa等

    1.mysql cmd进入dos命令,输入mysql -u root -P 1202 -h localhost -p敲回车输入密码 use mysql; 修改用户名root为其他用户 update u ...

  8. RFID了解

    转载自为什么大家都抛弃传统标签选择RFID电子标签? rfid电子标签是一种非接触式的自动识别技术,它通过射频信号来识别目标对象并获取相关数据,识别工作无需人工干预,作为条形码的无线版本,RFID技术 ...

  9. RabbitMQ安装、集群搭建、概念解析

    RabbitMQ安装.集群搭建.概念解析 基本概念 为什么会产生MQ 1.解耦:采用异步方式实现业务需求达到解耦的目的. 2.缓冲流量,削峰填谷: 问:为什么会有流量冲击? 答:采用"直接调 ...

  10. C#设置装配加载选项

    NX在打开装配时,需要设置加载方式,如下图所示: 因此,当装配进行了拷贝之后,PART路径变化,再次用NX打开时,会报无法加载的错误.这时需要重新设置从搜索文件夹打开,再次保存之后,之后再按照保存打开 ...