摘要:
阅读全文
摘要:
中间件 凡是全局相关的功能,都可以考虑使用中间件来实现。例如:全局的身份校验、访问频率校验、访问黑名单、访问白名单。 中间件总共有5个方法可以使用: process_request 请求从web服务网关接口传到中间件层时,会按照先后顺序依次执行每一个中间件里的process_request方法,遇到 阅读全文
摘要:
forms组件 forms组件的功能:1、渲染前端页面,不用在前端手写forms表单了,不过只会渲染用户输入(输入、选择、下拉、文件)的标签,不渲染按钮以及form表单标签,。2、后端能进行非常规范的数据合法性校验3、展示校验之后的合法性信息。 使用方法:1、定义一个自定义forms类 form组件 阅读全文
摘要:
多对多表关系的建立方式(以图书表和作者表为例) 多对多表关系的创建有三种方式:自动创建、手动创建、半自动创建 前文中已经介绍了多对多的全自动创建方式,但是创建的第三张表中只有两个外键字段,因为是该表是django自动生成的,故没办法在第三张表中增加其余字段 本文介绍剩余的两种: 纯手动创建以及半自动 阅读全文
摘要:
常用字段 AutoField(primary_key=True) 主键字段 CharField(max_length=32) varchar(32) IntegerField() int BigIntergerField() bigint DecimalField() decimal EmailFi 阅读全文
摘要:
时间格式的字段 publish_time = models.DateField() # 年月日 publish_time = models.DateTimeField() # 年月日 时分秒 publish_time = models.DateField() # 年月日 publish_time = 阅读全文
摘要:
模板语法的符号就两种 { { } } 和变量相关 , 比如取某处传来的值。 { % % } 和逻辑相关,比如for循环,以及条件判断。 模板语法的传值 Python所支持数据类型,都可以从视图函数中传到前端,但注意一定要用字典的形式传递。 传值有两种方式: 第一种指名道姓,即手动构造一个字典传到前端 阅读全文
摘要:
关于配置文件的设计 查阅django中settings的源代码中,可以学到一种值得借鉴的设计模式。即软件先存一份默认参数的配置文件,再暴露一个配置文件提供部分参数给用户进行修改。软件运行的时候,优先检索并使用暴露的配置文件中的参数,其次再检索默认的配置文件。 前提知识: 1、模块 importlib 阅读全文
摘要:
路由层 1.X用的是url 2.X、3.X用的是path url第一个参数是一个正则表达式 而path第一个参数不支持正则表达式 写什么就匹配什么 如果你觉得path不好用 2.x、3.x给你提供了一个跟url一样的功能 re_path 等价于1.x里面的url功能 虽然path不支持正则表达式 但 阅读全文
摘要:
视图层函数必须要返回一个HttpResponse对象。 视图层的三板斧:(三板斧本质上也是HttpResponse对象) from django.shortcuts import HttpResponse, render, redirect JsonResponse(本质上也是一个HttpRespo 阅读全文