11 2020 档案
摘要:1 restful规范 1 Representational State Transfer:表征性状态转移 2 Web API接口的设计风格,尤其适用于前后端分离的应用模式中 3 与语言,平台无关,任何框架都可以写出符合restful规范的api接口 4 规范:10条 -1 数据的安全保障:url链
阅读全文
摘要:Python 开发人员的 25 个最佳 GitHub 代码库! 以下为译文: 根据2020年StackOverflow开发者调查报告,Python是世界上最受欢迎的语言之一,排名仅次于Rust和TypeScript。更令人惊讶的是,Python是开发人员最想尝试的语言。如果你是一位使用Python的
阅读全文
摘要:一. 认证组件 1. 流程 1. 写一个类,继承BaseAuthentication,重写authenticate,认证的逻辑写在里面. 认证通过,返回两个值,一个值最终给了包装以后的request对象, 视图中就可以通过request.user获取, 认证失败,抛异常:APIException 或
阅读全文
摘要:一. 基本使用 from django.conf.urls import url # 第一步:从rest_framework包中导入routers模块 from rest_framework import routers from .views import BookModelViewSet # 第
阅读全文
摘要:一. 前言 Django REST framwork 提供的视图的主要作用 1. 控制序列化器的执行(检验、保存、转换数据) 2. 控制数据库查询的执行 二. 两个视图基类 两个视图基类: APIView, GenericAPIView 1. APIView 1) models.py class B
阅读全文
摘要: 一. 请求 from rest_framework.request import Request class Request: def __init__(self, request, parsers=None, authenticators=None, negotiator=None, pars
阅读全文
摘要:一. 序列化组件介绍 1. 序列化,序列化器会把模型对象转换成字典,经过response以后变成json字符串 2. 反序列化,把客户端发送过来的数据,经过request以后变成字典,序列化器可以把字典转成模型 3. 反序列化,完成数据校验功能 二. 简单使用 步骤: 1. 写一个序列化的类,继承S
阅读全文
摘要: 一. Web应用模式 在开发Web应用中,有两种应用模式: 知识储备: 什么是动态页面(查数据库的),什么是静态页面(静止的html) # 判断条件: 根据html页面内容是写死的还是从后端动态获取的 静态网页: 页面上的数据是直接写死的 万年不变 动态网页: 数据是实时获取的. 如下例子: 1
阅读全文
摘要:1 drf认证功能介绍 0 认证,频率,权限 1 用户是否登录到系统中 2 后期基本上会用JWT的认证 3 自定制的认证 2 认证功能源码分析 1 APIView 》dispatch 》self.initial(request, *args, **kwargs)--》self.perform_aut
阅读全文
摘要:需求分析 架构师+产品经理+开发者组长 在跟客户谈需求之前,会大致先了解客户的需求,然后自己先设计一套比较好写方案 在跟客户沟通交流中引导客户往我们之前想好的方案上面靠 形成一个初步的方案 项目设计 架构师干的活 编程语言选择 框架选择 数据库选择 主库:MySQL,postgreSQL,... 缓
阅读全文
摘要:什么是auth模块? auth模块是django自带的用户认证模块。 """ 我们在开发一个网站的时候,无可避免的要设计实现用户登录系统。其中,设计到的需求就包括但不限于用户注册,用户登录、用户认证、注销、修改密码等功能。 显而易见,这种重复造轮子的事情,django框架作为一个完美主义者自然会考虑
阅读全文
摘要:django中间件学习之拓展 拓展模块importlib # 模块importlib import importlib res = 'myfile.b' ret = importlib.import_module(res) # from myfile import b # 该方法最小只能到py文件名
阅读全文
摘要: 什么是中间件? """ 定义:中间件是一个用来处理Django的请求和响应的框架级别的钩子。它是一个轻量、低级别的插件系统,用于在全局范围内改变Django的输入和输出。每个中间件组件都负责做一些特定的功能。 """ 说的直白一些,中间件是帮助我们在视图函数执行之前和执行之后都可以做一些额外的操
阅读全文
摘要:前言 我们知道HTTP协议是无状态的,这就意味着,它不会保存用户的登录状态信息。在早期的网页发展过程中,这一特性能够满足绝大数网站的业务需求,诸如,博客、文章,等网站。 随着web技术的日新月异,以及人们的消费能力呈指数式增长,出现了一些如淘宝、京东、拼多多等电商网站,这些网站都具有庞大的客户群体,
阅读全文
摘要:前言 写一个注册功能,在后端来判断用户名或者密码是否符合一定的要求: (1)用户名中不能还有敏感字符串"#"; (2)密码的长度不能小于3位 后端代码: def ab_form(request): back_dic = {'username': '', 'password': ''} if requ
阅读全文
摘要:自定义分页器的实现 前言 django也有自带额分页器,但是功能较少,使用起来较为繁琐。所以我们可以使用自定义非分页器。 自定义分页器的推导思路 # queryset对象是支持索引切片操作的(不支持负数索引) book_queryset=models.Book.objects.all() page_
阅读全文
摘要:前后传递数据的编码格式(contentType) # 朝后端发送post请求的两种方式 (1)通过form表单的方式 (2)通过ajax请求 通过form表单的方式 form表单的默认编码格式是urlencoded 数据的默认格式是:username=wangpeng&password=123&fi
阅读全文
摘要:choices参数(数据库字段设计常见) """ 用户表 性别 学历 工作经验 是否结婚 是否生子 客户来源 ... 针对某个可以列举完全的可能性字段,我们应该如何存储 只要某个字段的可能性是可以列举完全的,那么一般情况下都会采用choices参数 """ class User(models.Mod
阅读全文
摘要: day07-0-Django框架学习初阶(六) 聚合查询 aggregate() """ 聚合aggregate()是QuerySet的一个终止语句,意思是,它返回了一个包含一些键值对的字典。其中,键的名称是聚合值的标识符,值是计算出来的聚合值,键的名称默认是按照字段和聚合函数的名称自动生成的。
阅读全文
摘要: 单表查询 Django自带的sqlite3数据库对日期格式不是很敏感,处理的时候容易出错 数据的增加 """方式一:""" res = models.User.objects.create( username='egon_dsb', password='dbj123', gender='fema
阅读全文
摘要:CBV源码解析 # 突破口在 urls.py url(r'^login/',views.MyLogin.as_view()) # url(r'^login/',views.view) CBV本质上与FBV是一致的 @classonlymethod # 类方法 def as_view(cls, **i
阅读全文
摘要: day04 Django框架学习初阶(三) 有名分组与无名分组的反向解析 无名分组的反向解析 from django.conf.urls import url from app01 import views urlpatterns = [ url(r'^index/(\d+)/$',views.
阅读全文
摘要:数据的增删改查 # 数据的查询 """ 方式一: models.User.objects.filter(id=edit_id).first() user_queryset = models.User.objects.filter() <QuerySet [<User: User object>, <
阅读全文
摘要: django server设置 静态文件的配置 一般而言,我们将html文件都放在模板文件夹templates中,将一些静态文件(如css,js,imge和引用的第三方文件)放在static文件下。 (1) 创建static相关文件夹 [root@alisurpass day60]# mkdir
阅读全文
摘要:http/https/websocket # http协议:超文本传输协议,具有以下特性: (1)基于request和response; (2)基于TCP/IP并作用于应用层之上的协议; (3)无状态,不保存用的状态信息; (4)无链接/短链接 http协议的数据传输是明文,默认端口80 # htt
阅读全文

浙公网安备 33010602011771号