01 2020 档案
摘要:中间件 凡是全局相关的功能,都可以考虑使用中间件来实现。例如:全局的身份校验、访问频率校验、访问黑名单、访问白名单。 中间件总共有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
阅读全文
摘要:通过ORM建立表关系 表关系:一对一,一对多,多对多 在模型类中,如果是一对多关系,外键建在多的表上;如果是多对多关系,外键建在常用的表上;如果是一对一关系,外键也建在常用的表上。 路由匹配、有名无名分组 路由匹配在django1.x版本中主要使用正则表达式,路由匹配的设置是在urls.py文件中的
阅读全文
摘要:简易的登录注册功能分析: 1、前端浏览器中要有页面,要将jQuery、bootstrap等第三方插件放到django项目中,以便返回一个特定样式的页面,故需要配置静态文件。 此处有两个对应关系 setting文件中的static配置:和templates中html中load接口名称和静态文件查找地址
阅读全文
摘要:jinja2模块可以取数据库的值,并返回到前端。是手写web框架的必备模块之一, 通过模板语法操作。 熟悉cmd的操作 安装django,此时用的python3.6 创建项目 运行项目 成功的页面 命令行中创建app的命令 pycharm中创建app的方式:点击加命令 注意点: 创建了app之后,一
阅读全文
摘要:准备 Bootstrap的中文网 https://www.bootcss.com/
阅读全文

浙公网安备 33010602011771号