![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Django扩展
文章平均质量分 79
gymaisyl
这个作者很懒,什么都没留下…
展开
-
DRF -- Django REST framework
在web开发过程中,有前后端分离和前后端不分离两种情况;前后端不分离:后端通过模板渲染/返回Json数据/重定向等方法,将后端的数据返回给前端;前后端分离:后端仅需要返回前端所需要的数据,至于前端界面的数据如何获取,或者html数据如何展示,后端是不需要再过问的;前后端分离的应用模式的特点:前后端分离情况下,前端和后端的耦合程度降低在这种情况下,我们后端写的视图被称为接口,也叫AP...原创 2018-11-13 21:33:45 · 534 阅读 · 0 评论 -
Django数据库的读写分离配置
读写分离其基本原理就是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE)操作,而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到其他从数据库。以SQL为例,主库负责写数据、读数据。读库仅负责读数据。每次有写库操作,同步更新到读库。写库就一个,读库可以有多个,采用日志同步的方式实现主库和多个读库的数据同步。mysql数据库的主从配置可参考...原创 2018-12-16 23:00:02 · 877 阅读 · 0 评论 -
Django框架--六--数据库
㈠简介:Django 对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。Django 为这些数据库提供了统一的调用API。 我们可以根据自己业务需求选择不同的数据库。MySQL 是 Web 应用中最常用的数据库。本章节我们将以 Mysql 作为实例进行介绍。你可以通过本站的 MySQL 教程 了解更多Mysql的基础知识。django中内嵌了...原创 2018-12-09 22:13:49 · 361 阅读 · 0 评论 -
Django框架--五--中间件
㈠简介:Django的中间件的作用,和Flask的钩子函数是有异曲同工之妙;也就是说,在请求进入视图函数之前,是需要经历中间件的各种考验的;或者说,在响应返回给前端之前,需要经过千锤百炼才可以送到前端。Django中的中间件是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出。中间件的设计为开发者提供了一种无侵入式的开发方式,增强了Django框...原创 2018-12-09 17:04:31 · 391 阅读 · 1 评论 -
web开发--支付宝支付
1.应用创建:应用创建详细过程参考官方文档,连接如下:应用创建详解2.配置密钥2.1生成公钥和私钥:opensslOpenSSL> genrsa -out app_private_key.pem 2048 # 私钥RSA2OpenSSL> rsa -in app_private_key.pem -pubout -out app_public_key.pem # 导出公钥...原创 2018-12-04 21:51:03 · 416 阅读 · 0 评论 -
Django框架--四--类视图
1.函数视图与类视图的比较在讲解类视图之前,我们可以先看一下,普通的视图函数在处理请求的时候,是怎样的一种情况: def register(request): """注册""" # 获取请求方法,判断是GET/POST请求 if request.method == 'GET': # 处理GET请求,返回注册页面 return rende..原创 2018-12-02 00:16:33 · 297 阅读 · 0 评论 -
Django框架--三--Cookie和Session
Cookie的特点:Cookie以键值对的格式进行信息的存储。Cookie基于域名安全,不同域名的Cookie是不能互相访问的,如访问itcast.cn时向浏览器中写了Cookie信息,使用同一浏览器访问baidu.com时,无法访问到jd.com写的Cookie信息。当浏览器请求某网站时,会将浏览器存储的跟网站相关的所有Cookie信息提交给网站服务器。Django中的cookie1....原创 2018-12-01 21:56:15 · 177 阅读 · 0 评论 -
购物车中的数据保存在数据库还是cookie中
目前我们使用购物车的存储方式主要有:Session方式,Cookie方式,数据库存储,下面来分析一下三种存储方式的优缺点。1.Session(Memcached)方式优点:购物车信息保存在服务端,可以保存1M 信息。缺点:对于大型网站会占有过多的服务器内存资源,造成服务器压力过大。Session保存的信息会在用户退出登录后丢失。用户下次登录,购物车中商品信息丢失,用户只能从新选择。2.Co...原创 2018-12-01 21:05:26 · 9250 阅读 · 0 评论 -
DRF--【视图集】详解
㈠ . ViewSet 视图集ViewSetMixin里重写了as_view方法,可以更方便的绑定actions。ViewSet视图集类不再实现get()、post()等方法,而是实现动作 action 如 list() 、create() 等。视图集只在使用as_view()方法的时候,才会将action动作与具体请求方式对应上常用视图集的父类:1) ViewSet继承自APIV...原创 2018-11-25 14:12:49 · 1685 阅读 · 0 评论 -
DRF 中的 ** 视图 **有哪些功能 (总结版)
㈠:APIViewAPIView : 是DRF中所有视图的基类,特点如下:Resquest和Response和Django中的HttpRequest和HttpResponse不一样,是进行相关处理的;任何APIException异常都会被捕获到,并且处理成合适的响应信息;在dispatch()分发前,会对请求进行身份认证、权限检查、流量控制 关于身份认证、权限检查、流量控...原创 2018-11-25 00:13:59 · 731 阅读 · 4 评论 -
DRF中使用缓存drf-extensions --- 针对经常查询, 但是不经常变动的数据进行缓存处理的方法
关于扩展使用缓存的文档,可参考链接 http://chibisov.github.io/drf-extensions/docs/#caching在Django REST framework中使用缓存,可以通过drf-extensions扩展来实现。安装pip install drf-extensions使用方法 1. 使用装饰器可以在使用rest_framework_extens...原创 2018-11-24 21:01:22 · 2297 阅读 · 0 评论 -
DRF中用户认证/权限认证 源代码分析
在讲解源码之前,先介绍一下 APIView和django中的View有什么不同 APIView是REST framework提供的所有视图的基类,继承自Django的View父类。APIView与View的不同之处在于: 传入到视图方法中的是REST framework的Request对象,而不是Django的HttpRequeset对象;REST framework 提供了Parse...原创 2018-11-22 19:44:01 · 828 阅读 · 0 评论 -
Django中的--View()视图函数--有哪些强大的功能
本文的最后把 View() 的代码在最后展示了,有兴趣的可以瞄一眼。了解View() 基本的功能,对于我们在后期项目中操作过程中,百利而无一害,haha。Ⅰ: _ _ init_ _ 实现的功能定义了url中的关键字参数是保存在类视图的kwargs属性中 def __init__(self, **kwargs): """ Constructor. Ca...原创 2018-11-22 18:20:11 · 3125 阅读 · 0 评论 -
Django框架--二--请求与响应
请求:在解释Django中的服务器获取参数之前,先说明一下,前端通过HTTP协议返回给咱们后端的传递参数的方式,有哪几种?①提取URL的特定部分,如/weather/beijing/2018,可以在服务器端的路由中用正则表达式截取;②查询字符串(query string),形如key1=value1&key2=value2;③请求体(body)中发送的数据,比如表单数据、json、...原创 2018-11-08 21:18:53 · 186 阅读 · 0 评论 -
FastDFS的基于python使用
㈠ 安装将文件 fdfs_client-py-master.zip 存放在pycharm中,然后再终端进行安装:pip install fdfs_client-py-master.zip(安装包后期放链接)安装压缩包完成后,再在终端中安装下面两个:pip install mutagenpip isntall requests㈡ 使用在进行使用之前,是需要进行相关配置文件的...原创 2018-11-26 20:13:24 · 8987 阅读 · 0 评论 -
使用haystack实现Django的全文搜索 -- Elasticsearch搜索引擎
全文搜索:在使用python进行web开发的时候,免不了需要使用到全文搜索;全文搜索和我们平常使用的数据库的模糊搜索查询不一样,例如在mysql数据库中,如果进行模糊查询,比如 name like '%wang%'这一类的,效率是非常低的;而我们需求的全文搜索,在效率方面要求是很高的,而且必须能够对中文进行分词处理。haystack:1.介绍:全文搜索的框架;Haystack是 BSD许可...原创 2018-11-30 15:30:49 · 2668 阅读 · 1 评论 -
使用haystack实现Django的全文搜索 --Whoosh+Jieba搜索引擎
安装haystack和Whooshpip install drf-haystackpip install whooshpip install jieba # Whoosh只支持英文分词搜索,不支持中文的分词,所以我们需要使用Jieba进行中文分词django-haystack的配置 Whoosh搜索引擎修改settings.py文件,添加haystack应用:INSTALLED_A...原创 2018-12-21 14:48:42 · 802 阅读 · 0 评论 -
Django -- DRF 中的 【视图 】详解
两个基类的介绍Ⅰ. APIView介绍:APIView是REST framework提供的所有视图的基类,继承自Django的View父类。APIView与View的不同之处在于:传入到视图方法中的是REST framework的Request对象,而不是Django的HttpRequeset对象;视图方法可以返回REST framework的Response对象,视图会为响应数据设...原创 2018-11-15 21:11:23 · 1180 阅读 · 0 评论 -
REST framework 中的 Request 和 Response
Requestfrom rest_framework.request import RequestREST framework 中的request和Django中的HttpRequest的是不一样的,它是继承于SimpleTemplateResponse, 而SimpleTemplateResponse是继承于HttpResponse的。REST framework 提供了Parser解析...原创 2018-11-15 21:58:26 · 430 阅读 · 0 评论 -
DRF---Django中 模型类序列化器 ModelSerializer
关于常规的Serializer使用方法,可以参考 常规的Serializer讲解如果我们需要使用的序列化器,是对应Django的模型类,那么,DRF已经为我们提供了ModelSerializer模型类序列化器,可以满足我们的需求,快速创建一个Serializer类。ModelSerializer和普通Serializer的区别:①:基于模型类自动生成一系列字段;②:基于模型类自动为Ser...原创 2018-11-14 20:22:44 · 1140 阅读 · 0 评论 -
Django中配置Mysql数据库
在settings.py中保存了数据库的连接配置信息,Django默认初始配置使用sqlite数据库。** 默认的数据库配置DATABASES = {‘default’: {‘ENGINE’: ‘django.db.backends.sqlite3’,‘NAME’: os.path.join(BASE_DIR, ‘db.sqlite3’),}}配置过程安装驱动: 使用My...原创 2018-11-16 20:28:52 · 222 阅读 · 0 评论 -
Django中 JWT -- obtain_jwt_token的原理
首先先声明以下本次进行登陆验证操作的环境:Django框架中,在项目名同名的文件包下创建一个users子应用(正常流程下,咱们在注册时,已经将这个子应用创建好了);具体的一些文件可以参考下图。当前,在使用JWT之前,我相信大家应该知道把JWT安装一下的吧pip install djangorestframework-jwtDjango REST framework JWT提供了登录签发...原创 2018-11-19 20:39:53 · 5604 阅读 · 6 评论 -
Django中 创建了模型类在迁移时不会创建表
Django中的数据库的使用,是支持ORM(对象关系映射)的,所以,想要对数据库进行表的创建,就需要在Django中进行模型类的创建;模型类创建后,需要通过数据库的迁移命令,将模型类进行迁移后,在数据库中创建表;# 迁移命令python manage.py makemigrationspython manage.py migrate但是有时候,我们可能只想创建一个模型类做辅助作用,...原创 2018-11-22 16:50:17 · 2881 阅读 · 1 评论 -
Django -- url中的参数介绍
参考文档直达url()函数传递四个参数,两个必选参数:regex和view,两个可选参数:kwargs和name。 在这里,值得重新审视这些参数。url()参数:regex术语“regex”是一种常用的缩写,意思是“正则表达式”,它是用于匹配字符串中的模式的语法,换言之,在这里是匹配url。 Django从第一个正则表达式开始,在列表中自上而下匹配,将请求的URL与每个正则表达式进行比较,...原创 2018-11-22 17:16:39 · 1047 阅读 · 0 评论 -
os.environ -- DJANGO_SETTINGS_MODULE 如何设置
os.environ首先,可以在终端中写入以下的代码:import os for i, v in enumerate(os.environ.items(), 1): print(i, v) 获得的结果如下图所示:os.environ中存放了所有的环境变量。Django manage.pyif __name__ == "__main__": --> ...原创 2018-11-27 20:35:32 · 5903 阅读 · 0 评论 -
在Django中单独运行一个 .py 文件需要做的配置-------------外部python脚本调用django项目中的方法
先做一个测试----- 在django的配置文件settings.py中,加入一段代码: 在scripts/11.py,代码1如下: 运行结果如下: 现在将相关的配置进行写入后 运行结果如下:经过相关配置之后,我们会获取到Django配置文件中的所有配置信息,这样的话,我们的.py文件中,如果运行的内容需要依赖django的配置,那么我们就必须这样进行配置设置。...原创 2018-11-27 21:08:21 · 3717 阅读 · 0 评论 -
Django的配置详解
–总结Django中使用到的配置,以及在什么情况下进行什么样的配置基础认识Django 的设置文件包含你安装的Django 的所有配置,设置文件只是一个Python 模块,带有模块级别的变量。比如下面图片展示的设置:注意,如果项目在上线的时候,是不能将DEBUG设置为True,也就是说,你就必须将Debug=False,如果你设置DEBUG 为False,那么你应该正确设置ALLOWE...原创 2018-11-28 14:58:39 · 1374 阅读 · 0 评论 -
Django自带的用户模型类 // 以及如何创建自定义的用户模型类
原文详细文档可参考: https://yiyibooks.cn/xx/Django_1.11.6/ref/contrib/auth.html#django.contrib.auth.models.UserDjango用户模型类Django认证系统中提供了用户模型类User保存用户的数据,默认的User包含以下常见的基本字段:username必选。 150个字符以内。 用户名可能包含...原创 2018-11-28 15:27:45 · 2190 阅读 · 1 评论 -
Django中通过celery完成异步任务
开发环境: Django:1.11项目布局安装 celery: pip install celery异步任务模块 celery_tasks;异步任务: sms (发送短信);config: celery异步任务的配置(这里是用来指名异步任务存储的位置);main: 是整个异步任务的配置在main.py中在 config.py配置文件中 :broker_url = "red...原创 2018-11-28 17:09:28 · 276 阅读 · 0 评论 -
Django项目--学习文档链接大全
Django-redis(中文) :https://django-redis-chs.readthedocs.io/zh_CN/latest/Django 自带的认证系统 和 用户模型 : https://yiyibooks.cn/xx/Django_1.11.6/topics/auth/index.html原创 2018-11-28 20:42:22 · 156 阅读 · 0 评论 -
Django框架--一--安装,工程创建,应用创建,配置,基础操作介绍
Django:Ⅰ.定义与特点:Django(发音:[`dʒæŋɡəʊ]) 是用python语言写的开源web开发框架(open source web framework),它鼓励快速开发,并遵循MVC设计。特点:重量级框架这个重量级的形容,是相对于Flask框架来说的;正如我们所了解的,Flask框架中,其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2。但是...原创 2018-11-07 21:46:23 · 232 阅读 · 0 评论