Django基础知识
探究Django的相关知识
奋斗的源
伸手摘星,即使徒劳无功,亦不致一手污泥。
展开
-
Django的DRF(三):其他功能(认证、权限、限流、分页、过滤、排序、异常处理、接口文档)
文章目录1.认证(Authentication)2.权限(Permissions)2.限流(Throttling)1.认证(Authentication)可以参考官方文档,配置认证内容可以在配置文件中,配置全局默认的认证方案:settings.py:# DRF配置信息REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': [ # BasicAuthentication:此身份验证方案使用HTTP基本身份验证原创 2020-09-25 08:04:24 · 798 阅读 · 0 评论 -
Django的DRF(二):APIView(一级视图)、GenericAPIView(二级视图)、三级视图、ViewSets(视图集)、Router(路由)
文章目录一.模型类序列化器ModelSerializer1.序列化与反序列化(1)序列化(2)反序列化2.field一.模型类序列化器ModelSerializer1.序列化与反序列化serializers.py:# 定义书籍模型类序列化器from rest_framework import serializersfrom Book.models import BookInfoclass BookModelSerializer(serializers.ModelSerializer):原创 2020-09-24 09:21:45 · 3226 阅读 · 3 评论 -
Django的DRF(一):前言、简介、Serializer序列化器、ModelSerializer序列化器
文章目录一.前言1.REST接口开发2.序列化(Serialization)二.简介1.概述2.环境安装与配置一.前言1.REST接口开发在开发REST API接口时,视图中做的最主要有三件事:(1)将请求的数据(如JSON格式)转换为模型类对象(2)操作数据库(3)将模型类对象转换为响应的数据(如JSON格式)2.序列化(Serialization)(1)维基百科中对于序列化的定义: 序列化(serialization)在计算机科学的资料处理中,是指将数据结构或物件状态转换成可取用格式原创 2020-09-23 08:04:54 · 996 阅读 · 0 评论 -
Django站点管理:简介、个性化站点管理,后台主题框架(django-simpleui)
文章目录一.简介二.站点管理1.基本使用2.个性化站点管理(1)显示字段(2)搜索字段(3)分页(4)过滤字段(5)排序规则(6)分组显示(7)布尔值定制显示(8)后台主题框架一.简介Django中默认集成了后台数据管理页面,通过简单的配置就可以实现模型后台的Web控制台。管理界面通常是给系统管理员使用的,用来完成数据的输入,删除,查询等工作。如果没有集成,自己在settings中的INSTALLED_APPS添加’django.contrib.admin’应用就好了二.站点管理1.基本使用创原创 2020-09-22 13:57:39 · 2077 阅读 · 0 评论 -
Django的FBV与CBV:FBV基本使用及序列化问题、CBV基本使用、序列化问题及类视图
文章目录一.FBV1.基本使用2.序列化问题二.CBV1.基本使用一.FBV1.基本使用概念:基于函数的视图函数(function base view)创建主路由:url(r'^fbv/',include('FbvApp.urls')),创建子路由:url(r'^animal/',views.animal),创建模型并进行迁移:class Animal(models.Model): name = models.CharField(max_length=32) age =原创 2020-09-20 11:41:24 · 450 阅读 · 0 评论 -
Django的边边角角(二):缓存、中间件、分页器、富文本
文章目录原创 2020-09-19 09:17:04 · 514 阅读 · 0 评论 -
Django的边边角角(一):模型继承、静态资源、文件上传
文章目录一.模型继承1.概述2.模型创建二.静态资源1.静态资源和模板的区别2.注意三.文件上传1.源码实现一.模型继承1.概述默认一个模型在数据库中映射一张表如果模型存在继承的时候,父模型产生表映射子模型对应的表会通过外键和父表产生关联从表外键引用主表得主键 不能说从表外键引用主表得主键就一定是模型继承 因为一对一 一对多 都会引用主表得主键关系型数据库性能 数据量越大性能越低 关系越多越复杂越低性能越低2.模型创建class Dog(Animal): name =原创 2020-09-18 10:52:28 · 318 阅读 · 0 评论 -
Django模型的高级:模型迁移与反向迁移、模型关系(一对一模型、一对多模型、多对多模型)
文章目录一.模型迁移与反向迁移1.Model --> DB (模型 to 数据库)2.DB --> Model (数据库 to 模型)二.模型关系1.一对一(1)应用场景(2)添加一.模型迁移与反向迁移1.Model --> DB (模型 to 数据库)(1)迁移步骤 生成迁移文件 python manage.py makemigrations 执行迁移文件 python manage.py migrate(2)迁移文件的生成 根据models文件生成对原创 2020-08-07 11:40:11 · 1817 阅读 · 2 评论 -
Django的csrf豁免:解决CSRF验证失败,请求被中断问题
文章目录一.CSRF介绍二.解决csrf的问题/csrf豁免一.CSRF介绍跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本(XSS)相比,XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。这里推荐一篇文章,个人感觉写的不错:Python中原创 2020-08-06 14:31:01 · 14225 阅读 · 0 评论 -
Django的会话技术:Cookie、Session、Token、三者的区别
文章目录一.会话技术1.介绍2.详细过程二.cookie一.会话技术1.介绍请求过程Request开始,到Response结束连接都是短连接延长交互的生命周期将关键数据记录下来Cookie是保存在浏览器端/客户端的状态管理技术Session是服务器端的状态管理技术2.详细过程在浏览器中输入域名url,会经过dns服务器将域名解析成ip返回后,浏览器发送request对象请求给服务器,服务器收到请求后创建一个session对象,该对象会有个session_key的值,服务器会将该值以s原创 2020-08-04 13:43:57 · 991 阅读 · 0 评论 -
Django的视图函数(二):request对象、视图函数返回值(HTML响应、JsonResponse)、反向解析(视图函数)、HttpResponse子类
文章目录一.request对象1.概念2.属性(1)path(2)method(3)GET一.request对象1.概念Django框架根据Http请求报文自动生成的一个对象,包含了请求各种信息。2.属性创建主路由:url(r'^req/',include('ReqApp.urls'))(1)pathpath:请求的完整路径创建子路由:url(r'^testReq/',views.testReq),生成视图函数:def testReq(request): print(re原创 2020-08-02 15:44:41 · 1798 阅读 · 0 评论 -
Django的视图函数(一):概念及基础语法、内置函数、反向解析(页面)
文章目录一.概念及基本语法1.概念2.url路由匹配规则3.路由参数(1)基本使用(2)位置参数(3)关键字参数一.概念及基本语法1.概念视图函数是MTV中的View,相当于MVC中的Controller作用,控制器接收用户输入(请求),协调模板模型,对数据进行处理,负责模型和模板的数据交互。视图函数返回值类型: (1)以Json数据形式返回 前后端分离 return JsonResponse (2)以网页的形式返回 HttpRespons原创 2020-08-01 08:46:09 · 896 阅读 · 0 评论 -
Django的模板:概念、基本语法、过滤器、结构标签、加载静态资源
一.Template概念概念:模板 在Django框架中,模板是可以帮助开发者快速生成,呈现给用户页面的工具 模板的设计方式实现了我们MVT中VT的解耦,VT有着N:M的关系,一个V可以调用任意T,一个T可以供任意V使用 模板处理分为两个过程:加载、渲染 模板中的动态代码段除了做基本的静态填充,可以实现一些基本的运算,转换和逻辑。 早期的web服务器,只能处理静态资源请求,模板能处理动态资源请求,依据计算能生成相应的页面。注意:在Django中使用的就是Django模板,在flask原创 2020-07-31 07:57:04 · 456 阅读 · 0 评论 -
Django的模型(二):创建对象的方式、查询集(过滤器、聚合函数、跨关系查询、F对象、Q对象)
文章目录一.创建对象的方式一.创建对象的方式原创 2020-07-30 08:03:58 · 475 阅读 · 0 评论 -
Django的模型(一):DML、Django Shell、数据级联、元信息、字段类型及约束、模型过滤
文章目录一.DML1.迁移2.模型对象的添加3.模型对象的查询4.模型对象的删除5.模型对象的修改二.Django Shell三.数据级联1.一对多模型的创建2.一对多查询(1)根据主表对象查询从表数据(2)根据从表对象查询主表数据四.元信息五.字段属性的定义及约束1.概括2.库3.逻辑删除4.字段类型5.字段选项6.关系六.模型过滤1.概括2.链式调用一.DML1.迁移(1)迁移默认的13...原创 2020-07-29 07:59:01 · 612 阅读 · 0 评论 -
Django的基本流程(二):模板显示、数据库的修改
文章目录一.模板显示1.传参显示2.支持 for3.兼容性4.render底层实现二.数据库的修改三.数据库的修改一.模板显示1.传参显示在根路径下引入子路径url(r'^app/',include('App.urls'))在App下的urls.py文件中:urlpatterns=[ url(r'^testTem/',views.testTem)]在templates中...原创 2020-07-27 21:22:38 · 264 阅读 · 0 评论 -
Django的基本流程(一):MVC/MTV的介绍、Django简介、虚拟环境、创建项目、拆分路由器、模板配置、工作机制
文章目录1.简介2.虚拟环境3.虚拟化技术4.安装5.创建Django项目6.Django项目的基本配置1.简介Django是一个开放源代码,遵循MVC设计模式的Web应用框架,它的主要功能是便捷的开发数据库驱动的网站,同时,它还拥有许多功能强大的第三方插件,甚至可以开发自己的工具包,所以已经成为了大多数web开发人员的首选框架。官方网站:http://www.djangoproject.c...原创 2020-07-26 16:52:07 · 2011 阅读 · 0 评论