随笔分类 -  Django学习

摘要:报错: AttributeError: 'NoneType' object has no attribute 'split' 最近在写网站中遇到一个问题,就是题目上所写的:AttributeError: 'NoneType' object has no attribute 'split' 然后还有这 阅读全文
posted @ 2019-10-15 19:25 划得戳 阅读(351) 评论(0) 推荐(0)
摘要:#分页例子from django.core.paginator import Paginatordef blog_list(request): blog_all_list = models.Blog.objects.all() paginator = Paginator(blog_all_list, 阅读全文
posted @ 2019-09-23 11:31 划得戳 阅读(241) 评论(0) 推荐(0)
摘要:python项目运行环境: 安装虚拟环境工具 pip install virtualenv 使用虚拟环境: 创建虚拟环境: virtualenv <虚拟环境名称> 进去虚拟环境: Scripts\activate 退出虚拟环境: deactivate 生成requirement文件: pip fre 阅读全文
posted @ 2019-09-03 10:24 划得戳 阅读(202) 评论(0) 推荐(0)
摘要:1.语言 LANGUAGE_CODE = 'zh-hans' 2.时区 TIME_ZONE = 'Asia/Shanghai' 3.字段名汉化 models.CharFielf(verbose_name='中文名') 4.admin自定义字段名admin.pynickname.short_descr 阅读全文
posted @ 2019-08-30 17:06 划得戳 阅读(212) 评论(0) 推荐(0)
摘要:表结构讨论: 是用一张表价格策略表来记录两种不同的价格策略 content-type原理: 使用一张表来记录不同课程的价目,增加一行表名称 注释: 适用于多张表关联一张表的情况 会自动生成这种的结构: 阅读全文
posted @ 2019-08-14 18:04 划得戳 阅读(474) 评论(0) 推荐(0)
摘要:渲染器: from rest_framework.renderers import BrowsableAPIRenderer,AdminRenderer,HTMLFormRenderer,JSONRenderer class TestView(APIView): renderer_classes = [JSONRenderer,BrowsableAPIRenderer, ] #建议只... 阅读全文
posted @ 2019-08-14 16:16 划得戳 阅读(151) 评论(0) 推荐(0)
摘要:路由: a. url(r'^(?P[v1|v2]+)/v1/$',views.ViewView.as_view()) url(r'^(?P[v1|v2]+)/v1\.(?P\w+)$',views.ViewView.as_view()) b. url(r'^(?P[v1|v2]+)/v1/(?P\d+)/$',views.ViewView.as_view({'g... 阅读全文
posted @ 2019-08-14 16:03 划得戳 阅读(133) 评论(0) 推荐(0)
摘要:视图: a. django class Test(View): ... b. rest_framework class Test(APIView): ... c. GenericAPIView 一般不用这个类来做视图 from rest_framework.generics import GenericAPIView cl... 阅读全文
posted @ 2019-08-14 15:52 划得戳 阅读(137) 评论(0) 推荐(0)
摘要:分页: a. 分页,看第n页, 每页显示n条数据 from rest_framework import serializers from api import models from rest_framework.pagination import PageNumberPagination class PagerSerializer(serializers.ModelSerializer)... 阅读全文
posted @ 2019-08-14 14:46 划得戳 阅读(349) 评论(0) 推荐(0)
摘要:验证实例: 阅读全文
posted @ 2019-08-14 09:42 划得戳 阅读(681) 评论(0) 推荐(0)
摘要:使用第四版 1. 继承 serializers.ModelSerializer 2. class Meta: model = models.<表名> fields = "__all__" 3. 可以自定义字段 fields = ['id','username','password','user_ty 阅读全文
posted @ 2019-08-13 18:08 划得戳 阅读(149) 评论(0) 推荐(0)
摘要:第一版: 第二版: 全局设置: urls传参: 全局设置: 第三版: 阅读全文
posted @ 2019-08-13 15:53 划得戳 阅读(158) 评论(0) 推荐(0)
摘要:解析器: 开始: django: request.POST/ request.body 满足一下两个要求POST中才有值 1. 如果请求头中的 Content-Type: application/x-www-form-urlencodeed, request.POST 中才有值(request.body中解析数据) 2. 数据格式要求: name-ale... 阅读全文
posted @ 2019-08-13 15:53 划得戳 阅读(128) 评论(0) 推荐(0)
摘要:第一版: 全局配置: 第二版: 第一版: - 必须继承 BaseThrottle - 必须实现 allow_request 和wait 方法 第二版: - 必须继承 SimpleRateThrottle - 必须实现 get_cache_key方法 传递参数 scope = “userkey” - 阅读全文
posted @ 2019-08-13 11:35 划得戳 阅读(210) 评论(0) 推荐(0)
摘要:简单实例: 如果没有配置: 源码流程: 改进版: 继承内置权限类: 1.必须继承 BasePermission类 2.必须实现has_permission方法 阅读全文
posted @ 2019-08-12 16:31 划得戳 阅读(439) 评论(0) 推荐(0)
摘要:第一版 : 自己写函数实现用户认证 第二版: 改进版 rest_framework源码执行流程: 全局配置: 局部不使用: 配置匿名用户: 第三版: 继承BaseAuthentication 1. 必须继承BaseAuthentication类 2. 必须实现anthenticate方法 阅读全文
posted @ 2019-08-12 15:41 划得戳 阅读(374) 评论(0) 推荐(0)
摘要:settings.py里面有一个中间件 django.middleware.csrf.CsrfViewmiddleware #如果注释掉全站不需要csrf验证 如果打开全站都要csrf验证 全局使用csrf认证 csrf-token是用django中间件来实现的 from django.views. 阅读全文
posted @ 2019-08-09 14:35 划得戳 阅读(1611) 评论(0) 推荐(0)
摘要:jdango中间件:class Test(View): def dispatch(self, request, *args, **kwargs): #第一种方法 func = getattr(self,request.method.lower())#反射 ret = func(request,*ar 阅读全文
posted @ 2019-08-09 10:58 划得戳 阅读(212) 评论(0) 推荐(0)
摘要:第一步: 搭建python环境 最好使用 pyenv可以很好的管理多版本下的python环境 第二步:搭建django环境 使用 pip install django==1.12.1 来安装 安装好以后可以使用创建一个实验项目来实现django是否搭建成功 django.admin.py start 阅读全文
posted @ 2018-04-20 14:47 划得戳 阅读(1275) 评论(0) 推荐(0)
摘要:详解Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化 详解Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化 在数据库有外键的时候,使用 select_rel 阅读全文
posted @ 2017-12-30 16:44 划得戳 阅读(321) 评论(0) 推荐(0)