随笔分类 - Django
摘要:当参数为form-data 或者x-www-form-urlencoded类型时,使用request.POST获取到参数 获取参数方式 request.POST.get('username') 当参数为raw类型时,使用request.body获取到参数,获取的参数需要经过处理才能使用 获取参数方式
阅读全文
摘要:django的POST接口发起请求默认清空下需要进行CSRF验证 正常验证CSRF form表单 如果form表单直接在标签之间添加{{ csrf_token }}就可以完成验证 ajax的POST请求 ajax的post需要在请求的header中添加X-CSRFtoken字段,字段的值为{{ cs
阅读全文
摘要:haystack是全文搜索的框架,支持whoosh、solr、Xapian、Elasticsearc四种全文检索引擎,点击查看官方网站。 whoosh是用纯Python编写的全文搜索引擎,虽然性能比不上sphinx、xapian、Elasticsearc等,但是无二进制包,程序不会莫名其妙的崩溃,对
阅读全文
摘要:分页器代码说明 import os import random # 需要导入分页器类 from django.core.paginator import Paginator, EmptyPage # 导入配置django配置文件 os.environ.setdefault('DJANGO_SETTI
阅读全文
摘要:admin数据管理后台是django内置的一个后台管理界面,能查看已注册模型类的数据结构,以及对数据的增删改。 一、基础操作 1.1 检查项目目录下的urls.py有没有如下配置 1.2 创建django的admin后台管理账号 python manage.py createsuperuser 1.
阅读全文
摘要:当使用下面命令启动django服务时,setting会自动加载 python manage.py runserver 通过查看manage.py可以找到加载代码为 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'settings的路径id') 知道s
阅读全文
摘要:部署FastDFS:https://www.cnblogs.com/testlearn/p/16303541.html 将图片到FastDFS和浏览的流程图 使用自定义文件存储类 1、定义存储类 自定义django文件存储类需要继承django的Storage类,并重写_open、_save、url
阅读全文
摘要:Django内置的用户认证系统,可用于处理用户账户、群组、许可和基于cookie的用户会话。 Django的认证系统包含了身份验证和权限管理两部分: 身份验证用于核实某个用户是否合法 权限管理决定一个合法用户具有哪些权限 Django的认证系统主要包括下面几个部分: 用户 许可 组 可配置的密码哈希
阅读全文
摘要:模板继承先创建一个父模版,它包含大部页面共有元素,并且需要定义能够被子模板覆盖的blocks标签。 extends 模板继承 通过下面的例子,理解模板继承的概念。 创建base.html文件,写入下面代码: <!DOCTYPE html> <html lang="en"> <head> <title
阅读全文
摘要:引用变量 可以使用{{}}引用视图函数响应的变量和模板中的变量。 比如有如下视图函数 在模板中引用变量方式如下 界面展示如下 for循环标签 可以使用 {{ for 变量 in iters }}...{% endfor %}实现for循环。 比如有如下视图函数 在模板中使用for循环 界面展示如下
阅读全文
摘要:设置cookie 在响应对象中使用set_cookie方法设置cookie from django.http import HttpResponse def set_cookie(request): rsp = HttpResponse("set cookie") rsp.set_cookie("s
阅读全文
摘要:一、配置redis 在settings中添加配置参数 # Django的缓存配置 CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", # 声明使用redis作为缓存 "LOCATION": "redis://:123
阅读全文
摘要:使用django邮箱功能需要搭建smtp服务器,如果没有,可以使用第三方smtp服务器。 本文以第三方QQ邮箱服务器演示如何使用python的smtplib+email完成邮箱发送功能。 一、开启SMTP服务并获取授权码 具体参考 email + smtplib使用简介。 二、在Django的配置文
阅读全文
摘要:与path定义的路由相比,re_path 定义的路由可以使用正则表达式匹配url。 需要注意的是: 如果未定义匹配结果的变量名,匹配的结果默认传入视图的第2个形参。 如果定义了匹配结果的变量名,匹配的结果会传给视图的同名字段,如果没有同名字段会报错。 定义个简单视图如下: from django.h
阅读全文
摘要:一、静态资源配置 静态资源的相关配置都在项目目录下的 settings.py 文件中进行配置。配置参数如下: # 浏览器访问静态资源时的路径 STATIC_URL = '/static2/' # 存放静态资源的文件路径 STATICFILES_DIRS = [ os.path.join(BASE_D
阅读全文
摘要:Request 当URLconf文件匹配到用户输入的路径后,会调用对应的view函数,并创建一个包含请求元数据的 HttpRequest 对象 传入该函数的第一个参数,常用request表示。 HttpRequest实例的属性包含了关于此次请求的大多数重要信息。 除了session外的所有属性都应该
阅读全文
摘要:# 定义书籍模型类 class BookInfo(models.Model): btitle = models.CharField(max_length=20) # 书籍名称 bpub_date = models.DateField() # 发布日期 bread = models.IntegerFi
阅读全文
摘要:本文初略的记录了Django测试板块相关信息,详情请阅官方文档:https://docs.djangoproject.com/zh-hans/3.1/topics/testing/ 开始写我们的第一个测试 首先得有个 Bug 幸运的是,我们的 polls 应用现在就有一个小 bug 需要被修复:我们
阅读全文
摘要:类视图优点 使用django的函数视图,如果要让同一个视图实现不同的请求方式实现不同的逻辑,就需要在脚本中使用条件语句进行判断。 这样使用起来没有问题,但是如果再实现put、delete等其它请求方式,在代码可读性就会很差。 使用django提供的类视图就可以解决这个问题。 类视图可以将对应的不同请
阅读全文
摘要:一、模板 如何向请求者返回一个漂亮的页面呢? 肯定需要用到html、css,如果想要更炫的效果还要加入js,问题来了,这么一堆字段串全都写到视图中,作为HttpResponse()的参数吗?这样定义就太麻烦了吧,因为定义字符串是不会出任何效果和错误的,如果有一个专门定义前端页面的地方就好了。 解决问
阅读全文