django基本操作
摘要:django基本操作(在命令行操作) 创建一个新django项目: 先切换到想要存放项目文件夹的目录,然后执行以下代码 django-admin startproject mysite1 mysite1为项目名称,即项目文件夹名称, 启动django项目 要先切换到项目文件夹目录中 cd D:\Pr
阅读全文
Ajax
摘要:Ajax 例子:github注册页面 异步提交,提交以后不等待 局部刷新 向后端发送请求的方式 什么请求 浏览器地址栏输入url回车 GET a标签的href属性 GET form表单 GET/POST Ajax GET/POST 学jQuery封装之后的版本,在前端页面使用ajax的时候需要确保导
阅读全文
forms组件
摘要:forms组件 forms组件能够完成的事情: 渲染标签 校验数据 展示提示信息 前端数据校验可有可无,后端据校验必须要有 因为可以修改前端的数据,或者利用爬虫程序绕过前端页面直接向后端提交数据 forms组件校验数据 class MyForm(forms.Form): username=forms
阅读全文
csrf相关装饰器(视图类CBV如何添加装饰器)
摘要:网站整体不校验,只有几个需要校验 网站整体校验,只有几个不需要校验 CBV中加装饰器的三种方式 装饰器csrf_protect 装饰器csrf_exempt 在类中直接加在某个函数上 有效 无效 在类头顶上给某个函数加 有效 无效 给dispatch函数加 有效 有效 csrf_protect和cs
阅读全文
Auth模块
摘要:用Auth模块就用全套,该模块默认使用auth_user表,django的admin后台管理也用auth_user表 以下代码中有以下方法 auth.authenticate(request,username=username,password=password) 1.自动查找auth_user表
阅读全文
django中间件
摘要:django中间件 django自带7个中间件,每个中间件都有各自的功能,还支持自定义中间件并且提供5个可以自定义的方法 MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.
阅读全文
模型层
摘要:模型层 sqlite3数据库对日期格式不是很敏感,处理的时候容易出错 register_time=models.DateTimeField(auto_now=True) #年月日时分秒格式 register_time=models.DateField(auto_now_add=True) #年月日格
阅读全文
视图层
摘要:视图层 视图函数必须要返回一个HttpResponse对象 request对象方法 request.method #返回的是全大写字符串 def login(request): if request.method=='POST': #request.POST获取用户POST请求提交的普通键值对,不包
阅读全文
路由层
摘要:路由层 路由匹配 path是精确匹配,re_path是正则匹配 取消自动加斜杠 APPEND_SLASH = False django 路由匹配的时候其实可以匹配两次,第一次如果url后面没有加斜杠,django会让浏览器加斜杠再发送一次请求 无名分组 就是将括号内正则表达式匹配到的内容当做位置参数
阅读全文
django请求生命周期流程图
摘要:web服务网关接口 WSGI是协议 wsgiref和uwsgi是 基于WSGI协议 实现的功能模块 django自带的wsgiref 能承受的最大 并发量在1000左右 上线后会换成uwsgi 并且有nginx反向代理 图片地址 https://www.freesion.com/images/171
阅读全文
django ORM
摘要:django ORM 缺点:封装程度太高,有时候sql语句的效率偏低 ORM能够让一个不会sql语句的python程序员也能够简单快捷地操作数据库 类 表 对象 记录 对象属性 记录字段 去应用下的models.py文件中书写模型类,用来创建数据表, orm不会创建数据库 from django.d
阅读全文