Django 总结
月守护
卡拉卡拉
展开
-
对Django的理解整理
首先创建一个Djange项目后,大体可分为三部分(两个package,一个dictionary)1.自己的app2.整个项目的控制器部分(和项目名称重名),作用在所有的app上3.templates先看第一部分app:在其下面的views.py存放处理函数可以自己创建static文件夹存放静态文件第二部分:主要的要两个:一个是setting文件,在项目启动后会首先执行这个文件,要...原创 2019-06-24 16:31:27 · 456 阅读 · 1 评论 -
记Django CBV下的put,delete方法反序列化不成功的解决办法
JS前端准备以put及delete方式向后台发送数据格式提取如下:var postlist = [];var temp={"id":"1","name":"月守护3dfd21","gender":"女","cls_id":"计算机三班"}postlist.push(JSON.stringify(temp))var temp={"id":"2","number":"1402024321",...原创 2019-07-22 16:15:35 · 312 阅读 · 0 评论 -
Django跨站请求伪造
一、简介django为用户实现防止跨站请求伪造的功能,通过中间件django.middleware.csrf.CsrfViewMiddleware 来完成。1.客户端在非Django返回页面上发送post请求时,会被Django拦截,但非服务器报错2.客户端在Django返回页面上发送post请求时,需要加上{% csrf_token %}放能发送成功而对于django中设置防跨站请求伪造...原创 2019-07-18 12:59:44 · 326 阅读 · 0 评论 -
Django V部分总结二之CBV模式及其CSRF
第一部分讲的大多都是views函数,形如:path('index/',views.index),def index(request): pass这种形式成为FBV模式,意思就是一个url对应的是一个具体的函数还有另一种形式叫做CBV模式,是一个url对应一个类,形式如下:path('asset-json.html/',views.AssetJsonView.as_view(...原创 2019-07-19 21:47:51 · 328 阅读 · 0 评论 -
Django--M部分整理总结三
这部分主要是对一,二部分的补充:包含一些高阶操作和优化方法一,创建表models字段和数据库字段不一致,但有一个对应关系:PS: 返回值为字段在数据库中的属性,Django字段默认的值为: 'AutoField': 'integer AUTO_INCREMENT', 'BigAutoField': 'bigint AUTO_INCREMENT', 'BinaryFi...原创 2019-07-12 15:21:56 · 200 阅读 · 0 评论 -
Django2自带用户登录注册功能总结
之前的登陆什么的都是自己利用数据库查询,form组件,cookie及session保存状态实现的,比较花费时间,而Django自带的登录认证能帮助我们快速开发数据库部分:在我们在models.py创建表时,会发现Django会自动创建很多表,其中有一个表名为:auth_user这个表就是Django自带的用户表,可以利用它来实现登录认证等先看一下这个表字段有哪些:Django Au...原创 2019-07-23 16:43:22 · 3653 阅读 · 3 评论 -
Django请求生命周期
所谓Django请求之生命周期就是:浏览器客户端向服务器发送url之后在服务器发生的一系列流程首先看一下Http协议,Http协议是建立在Tcp协议之上的。Tcp协议会建立链接,而Http协议是无状态的。要实现一种记录状态的效果,要借助cookie或者是session技术,后来会细讲Http协议要两个极其重要的内容,那就是Httprequest,Httpresponse这里强调一点,不...原创 2019-06-29 11:26:18 · 267 阅读 · 0 评论 -
Django之Form组件介绍
在进入正题之前,想多说两句;当我们开始学习一个新的知识的时候,比如说下面要讲的组件,我们肯定会感到陌生和困惑。这个东西是干嘛的呢?难不难学呢?学了之后又有什么用处呢?所以呢我认为我们在学习一个新知识的时候,先需要在大体上有一个简单的认识。比如说我们学Django,在开始之前呢,我们就了解到了它是一个web框架,它能帮助我们快速搭建web。这样的话我们就是带着目标去学的,中间就会少了很多困惑。...原创 2019-07-04 16:39:55 · 408 阅读 · 0 评论 -
分享一个自定义的Python分页组件
先看效果:在附上源码:"""自定义分页传入:-所有数据的个数-当前页-每页显示30条-最多页面7个"""class Pagination(): def __init__(self, totalCount, currentPage, perPagItemNum=10, maxPagNum=7): # 数据总总条数,当前页,每页显示条数,最多显示页码...原创 2019-07-04 11:42:59 · 185 阅读 · 0 评论 -
Django T 部分总结
T部分指的就是Django项目下的templates文件夹是Django自带的模板系统 (Template System)它的作用是将python代码和HTML文件解耦合,如此也便于维护templates文件夹文件间存放HTML文件Django的setting.py已经默认将路径添加,所以在全局都可以调用的到其中HTML文件,也就是模版的组成是:HTML代码+逻辑控制代码这里主要讲逻...原创 2019-06-24 23:04:34 · 265 阅读 · 0 评论 -
跨域AJAX总结
---------------------------------------前言------------------------------------------------一般来说,我们的浏览器在访问一个服务器之后,就只会和这一个服务器进行交互;浏览器存在一个同源策略,那它是什么呢?之前我们也遇到过,比如说:我们在第一次访问服务器的时候url是127.0.0.1:8080/index...原创 2019-07-08 15:15:54 · 119 阅读 · 0 评论 -
Django--M部分整理总结二
先附上第一部分添加链接描述原创 2019-06-26 17:33:35 · 143 阅读 · 0 评论 -
实现Ajax提交数据的三种方式
Ajax提交的三种提交方式Ajax发送请求的特点是不刷新页面,很常用一,原生Ajax实现方式:使用 浏览器中的XmlHttpRequest对象来完成请求优点:不依赖插件,直接快捷缺点:代码叫复杂,并且有的浏览器版本不兼容url关系:urlpatterns = [ path('admin/', admin.site.urls), path('index/', views...原创 2019-07-07 23:25:40 · 4517 阅读 · 0 评论 -
Django传递参数给JS的两种方式
第一种:Ajax里的回调函数arg,这里的arg是字符串(不刷新页面)如果Django要传递字符串,可以直接传递,JS接收可以直接使用Django:def eg(request): str1="这是JS要的数据" return HttpResponse(str1)JS(以jqury为例,下面也是): $.ajax({ url:"url"...原创 2019-07-01 19:42:53 · 13398 阅读 · 9 评论 -
Django--M部分整理总结一
M即Models,是连接操作数据库的部分django默认使用sqlite的数据库在setting.py里:DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }}要连...原创 2019-06-26 14:32:57 · 194 阅读 · 1 评论 -
Django V部分总结一
V部分就是Django Views(视图函数)其下主要包括两部分:一,URL配置(URLconf)是Django所支撑网站的目录本质是URL模式以及要为该URL模式调用的视图函数之间的映射表;你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。配置部分是在Django项目下的urls.py下的urlpatterns = [ ]部分具体的格式Djan...原创 2019-06-25 15:05:31 · 140 阅读 · 0 评论 -
Django之中间件
先看下Django自带的一些中间件:MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', ...原创 2019-08-07 13:53:31 · 124 阅读 · 0 评论