Django 知识点总结
知识点总结
一、URL:
1、在python 正则表达式中,正则表达式命名组的语法是(?P<name>pattern),其中命名组中的命名就是name,并且pattern 是某些匹配的模式
2.可以定义404 错误页面,统一处理
3.包含其他的 urlpatterns 可以用include
4.url 的反向解析
urlpatterns = [
path('',views.index,name='index')
]
from django.urls import reverse
def index(request):
print (reverse('index'))
return HttpResponse('Ok')
打印输出:
/index
二、Mode 的开发流程:
1)1.在应用的models.py 中定义模型类,要求继承自models.Model
2.把应用加入到settings 配置文件的INSTALLED_APPS 项中
3.生成迁移文件
python manage.py makemigrations
4.执行迁移
python manage.py migrate
5.使用模型类进行CRUD 操作(即增删改查)
2)mode 增删改查
#增
ob=Users() #创建实例对象
ob.name='zhangsan'
ob.age=18
ob.phone='112333444'
ob.save()
#改
ob=Users.objects.get(id=2)
ob.name='lisi'
ob.age=30
ob.phone='11177777'
ob.save()
#删除
ob=Users.objects.get(id=2)
ob.delete()
#查询
mod=Users.objects #获取user 模型的Model 操作对象
# ulis=mod.all() #获取所有数据
# ulist=mod.filter(name='lisi') #获取name 值为lisi 的信息
# ulist=mod.filter(age__gt=20) #获取所有age 大于20 的信息
#ulist=mod.filter(age__gte=30) #获取所有age 大于等于30 的信息
# ulist=mod.filter(age__lte=20) #获取所有gae 小于等于20 的信息
ulist=mod.order_by('age') #以age
for u in ulist:
print (u.id,u.name,u.age,u.phone,u.addtime)
三、cookie 中存数据(保存在客户端,即保存在客户端电脑硬盘上,可以找到cookie 对应的磁盘文件):
1.普通
response.set_cookie('uname','zhangsan',expires=value,path='/')
2.加盐
普通cookie 是明文传输的,可以直接在客户端直接打开,所以需要加盐,解盐之后才能查看
response.set_signed_cookie('k','v',salt='fdsa')
cookie 中取数据:
1.普通
request.COOKIES['hello']
request.COOKIES.get('hello')
四、session
1.设置session 后数据库中对数据进行了序列化
例如 request.session['uname']='zhangsan' 进行session 设置,数据库中session 值为
session_key: rgn2ks6apf7k3il99uiud0y3f7wwfab0 session_data:NmRkZDI5YTY1OThkZTUwNmEzOWIzNTI4YTMzZmQ1ZTk5MGVhOGZmODp7InVuYW1lIjoiemhhbmdzYW4ifQ==
expire_date:2022-04-27 02:45:23.424624
2022-04-27 02:45:23.424624D:\python27\Lib\site-packages\django\conf\global_settings.py
具体session 操作:
#在session 中默认存放时间是两周
#SESSION_COOKIE_AGE = 60 * 60 * 24 * 7 * 2
request.session['uname']='zhangsan'
#设置有效时间
#1.参数类型:整数:秒
request.session.set_expiry(5*24*60*60)
#删除session 数据,只是删除对象中sesion 数据
del request.session['uname']
#删除session 对象和数据库中的数据
request.session.flush()
return HttpResponse('设置成功')
Django 知识点总结的更多相关文章
- python Django知识点总结
python Django知识点总结 一.Django创建项目: CMD 终端:Django_admin startproject sitename(文件名) 其他常用命令: 其他常用命令: 通过类创 ...
- django知识点回顾与补充
一.django知识点回顾 1.Cookie操作 - 客户端本地存储的键值对 2.Session操作 - 3.URL路由 - /index -> view.函数 4.MTV 5.View中返回方 ...
- Django 知识点补充
Django 知识点补充 1 Django如何在Model保存前做一定的固定操作,比如写一条日志 (1)利用Django的Model的Signal Dispatcher, 通过django.db.mo ...
- linux django 知识点 安装mysql数据库 和 pycharm
django 命令及相关知识点 1. 启动 pycharm 命令:sh pycharm.sh 2. 创建 django 项目 : django-admin.py startproject Hello ...
- Django知识点归纳总结之HTTP协议与URL
Django复习知识点归纳总结 1.HTTP协议 超文本传输协议(Hyper Text Transfer Protocol),是用于万维网服务器与本地浏览器之间的传输超文本的传送协议. HTT ...
- django 知识点小结
以下内容为用django写blog中的一些知识点,权当复习. 一.定义view 1.get_object_or_404()是用get()查询数据,如果不存在就直接返回404 参数: get_objec ...
- 八月22日,django知识点总结:
八月22日,知识点总结: python manage.py makemigrations python manage.py migrate unique=true是指这个字段的值在这张表里不能重复,所 ...
- Django知识点整理
什么是web框架 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. web应用 访 ...
- Django知识点
一.Django pip3 install django C:\Python35\Scripts # 创建Django工程 django-adm ...
- Django知识点汇总
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
随机推荐
- centos6 编译安装 mysql5.6----------centos7编译安装MySQL5.7
centos6 编译安装 mysql5.6 安装依赖包 yum install -y ncurses-devel libaio-devel 安装cmake编译工具 cmake 定制功能:存储引擎.字 ...
- 【Frida】Java反射调用
通过反射调用,获取类名 参数Object obj 类名 String str 方法名 static Object a(Object obj, String str) { try { return ob ...
- golang 手写实现多台机器执行定时任务
多台机器,固定间隔每台分别去执行任务. package main import ( "fmt" "strconv" "time" ) fun ...
- RBAC(DAC)模型
基于角色的访问控制模型 ⟨ , ,,, , , ,, ,⟩ U:用户集 S:会话集 O:资源集 Op:操作集 R:角色集 PERMS:OxOp:权限集 RH:RXR(是 的偏序,表示角色的层次结构,其 ...
- element ui form 表单 校验upload是否有上传
查到资料 可以绑定在一个多选上,校验此绑定的值 1 <el-form-item label="上传图片" prop="双向绑定值"> 2 <e ...
- OS-lab5
OS-lab5 磁盘管理 完成文件系统的第一步就是要能够处理磁盘等外设的信息. lib/syscall_all.c 处理磁盘的信息,最基本的就是对磁盘进行读写操作. sys_write_dev函数用于 ...
- 下载成功安装maven,卸载替换eclipse自带的报错的maven
博主呢用eclipse自带的maven新建了一格maven项目,结果报了下面的错误:Could not resolve archetype org.apache.maven.archetypes:ma ...
- Jmeter学习:时间类函数
一.__time 功能介绍:按指定格式生成当前时间 ${__time(参数 1,参数 2)} 参数 1:时间格式 参数 2:注册变量名称 二.__timeShift 功能介绍:按格式生成时间格式,并计 ...
- idea gradle 安装失败
文件下载地址 gradle-> wrapper- > gradle-wrapper.properties 默认安装位置 ~/. gradle 当前项目 ~/. gradle 下载地址 wg ...
- matlab数操作
随循环填充(更新)矩阵 不断更新矩阵,填充矩阵,可用cat函数: C = cat(dim,A,B); 向量重复扩充矩阵 将相同的向量或矩阵进行重复扩充时,matlab有两种方法:(第二种方法的效率更高 ...