IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> django基础与回顾 -> 正文阅读

[Python知识库]django基础与回顾

一:django命令

1.django的创建命令:

??????????django-admin startproject 项目名

2.Model 的作用是什么

? ? ? ? ? model里存放的是模型类,与数据库连接,model的作用是操作数据库

3.View 的作用是什么:

? ? ? ? 一般在view里写的都是逻辑方法,所以view用来处理逻辑

4.model如何使用:

? ? ? ? (1),建立表结构 ---- 创建模型类.

? ? ? ? ? ? ? ? 继承models.Model模型类

? ? ? ? (2),数据库生成表? -----? 迁移模型类

? ? ? ? ? ? ? ? ? ? ? ? py manage.py makemigrations

? ? ? ? ? ? ? ? ? ? ? ? py manage.py migrate

? ? ? ? (3),表的数据操作? ---? 对数据的增删改查

5.迁移成功会生成迁移文件,记录所有的表操作方法.

二.数据检测查询.

? ? ? ? 1.基本查询:

? ? ? ? ? ? ? ? get(单一查询)

? ? ? ? ? ? ? ? all(查询多个结果)

? ? ? ? ? ? ? ? filter(条件).count() 查询结果的个数

? ? ? ? ? ? ? ? exclude() 对查询结果取反? 例如 age=18,取与条件相反的的数据

? ? ? ? 2.模糊查询

? ? ? ? ? ? ? ? (1).contains? 是否包含关键词

? ? ? ? ? ? ? ? ? ? ? ? 表名.objects,filter(字段名__contains='关键字')

? ? ? ? ? ? ? ? (2).startswith,endswith? 以指定值开头或结尾

? ? ? ? 3.空查询:

? ? ? ? ? ? ? ? is_null? 是否为空值? True(为空)? False(不为空)

? ? ? ? 4.范围查询:

? ? ? ? ? ? ? ? in? 在[1.2.3.] 范围内

? ? ? ? ? ? ? ? range? 在[10,20]? 范围内

? ? ? ? 5.比较查询:

? ? ? ? ? ? ? ? gt,gte? ? 大于,大于等于

? ? ? ? ? ? ? ? lt,lte? ? ? ?小于,小于等于

? ? ? ? ? ? ? ? exclude? ? 不等于

? ? ? ? 6.F查询与Q查询

? ? ? ? ? ? (1)? ? F查询,比较两个字段的值进行比较

? ? ? ? ? ? ? ? 表名.objects.filter(字段名__gte=F('字段名'))? 例如:商品数量大于价格

? ? ? ? ? ? ?(2)? Q查询? 与逻辑运算符配合使用,可以查询多个条件? ?(&与,|或,~非)

????????????????????????表名.objects.filter(Q(条件) & Q(条件))???

? ? ? ? 7.聚合函数:

? ? ? ? ? ? ? ? 使用aggregate()过滤器调用聚合函数,聚合函数包括:

????????????????????????? Avg(平均值]),Count(统计),Sum(求和),Max(最大值),Min(最小值)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表名.objects.aggregate(Count('字段名')? ? 统计个数

? ? ? ?8.排序:

? ? ? ? ? ? ? ? order_by,对结果进行排序

????????????????表名.objects.all().order_by('字段名')? 根据字段名进行排序默认正序

????????????????表名.objects.all().order_by('-字段名')? 根据字段名进行排序(倒序)

? ? ? ? 9.关联查询:

? ? ? ? ? ? ? ? 一对多类型

? ? ? ? ? ? ? ? ????????模型类一对多类型小写? ?_set

? ? ? ? ? ? ? ? ? ? ? ? b.主表名.objects.filter(id=1)? 子表名id为 1

? ? ? ? ? ? ? ? ? ? ? ? b.子表名_set.all() 查询主表里关联的子表信息

? ? ? ? ? ? ? ?多对一类型:

? ? ? ? ? ? ? ? ? ? ? ? c = 子表名.objects.filter(id=1)

? ? ? ? ? ? ? ? ? ? ? ? c.字段名? 查询字表关联的主表字段信息

? ? ? ? ? ? ? ? ? ? ? ? 也可以使用related_name来指定字段变量名

三.View的使用:

? ? ? ? 1.获取View里的request的请求参数

? ? ? ? ? ? ? ? (1).获取get

? ? ? ? ? ? ? ? ? ? ? ? request.GET.get()

? ? ? ? ? ? ? ? (2).获取form-data

? ? ? ? ? ? ? ? ? ? ? ??request.POST.get()

? ? ? ? ? ? ? ? (3).获取JSON

? ? ? ? ? ? ? ? ? ? ? ? data =?request.body

? ? ? ? ? ? ? ? ? ? ? ? json.loads(data)

? ? ? ? ? 2.返回请求的数据:

? ? ? ? ? ? ? ? 1.返回JSON

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1).JsonResponse

? ? ? ? ? ? ? ? ?2.返回字符串:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1).HttpResponse

? ? ? ? ? 3.序列化:

? ? ? ? ? ? ? ? ? ?(1).for i in 查询结果集:

? ? ? ? ? ? ? ? ? ?(2).数据=i.字段名

? ? ? ? 注: (1): 在原生django里不能使用data来获取数据,data属于DRF框架

? ? ? ? ? ? ? ? (2): 接收JSON数据要用body接收? (是以二进制流的形式接收)? 所以要先转化为JSON的? ? ? ? ? ? ? ? ? ? ? ? ?形式才能获取信息.

????????????????

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-09-22 14:38:10  更:2021-09-22 14:38:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 5:29:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计