- 博客(19)
- 收藏
- 关注
原创 图片,短信验证码
图片验证码,短信verify/views.pyimport randomfrom . import modelsfrom django.http import HttpResponseForbidden, HttpResponsefrom django.shortcuts import renderfrom django_redis import get_redis_connectionfrom rest_framework.views import APIView,Responsef.
2020-12-28 19:52:06
265
原创 orm操作
基本查询book = BookInfo.objects.get(btitle='⻄游记') #单⼀查询,如果结果不存在报错book = BookInfo.objects.all() #查询多个结果,有多少返回多少,不存在返回Nonebook = BookInfo.objects.filter(btitle='⻄游记').count() #查询结果的数量book = BookInfo.objects.exclude(btitle='⻄游记') #查询结果取反模糊查.
2020-12-17 21:54:47
203
原创 ModelViewSet的,排序过滤局部配置,全局配置以及分页
ModelViewSet的,排序过滤局部配置,全局配置以及分页modelviewset的使用以及配置model.pyfrom django.db import models# Create your models here.class Classroom(models.Model): class_name = models.CharField(max_length=20) class Meta: db_table = 'classroom' d
2020-12-17 20:05:41
350
1
原创 View与 APIView的区别
View是Django默认的视图基类,APIView是REST framework提供的所有视图的基类, 继承自Django的View。APIView与View的不同之处在于: 1.传入到视图方法中的是REST framework的Request对象,而不是Django的HttpRequeset对象; 2.视图方法可以返回REST framework的Response对象,视图会为响应数据设置(render)符合前端要求的格式; 3.任何APIException异常都会被捕..
2020-12-16 17:16:48
583
原创 中间件 middleware
中间件介绍及5种方法中间件 middleware中间件:轻量级的功能插件 作用范围:全局介于请求和处理之间,可以编写中间件 干预请求和响应中间件的调用方式配置文件里面添加中间件的规范是,第一个是文件夹名称,例如django就是一个文件夹名称。第二个是,文件夹下面的文件名。第三个就是文件里面的类名,这样就是自定义了一个自己的中间件。当添加到配置文件之后,请求来了这个中间件就会被自动调用并执行,如果请求顺利的话,中间件里面这几个方法的执行顺序的。 process_request, process_v
2020-12-15 11:22:47
433
原创 图片验证码
图片验证码图片验证码的生成# 缓存配置CACHES = { # django存缓默认位置,redis 0号库 "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/0", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.Defau
2020-12-07 19:29:57
166
原创 继承类的区别
继承类的区别modelviewset的使用可以完成增删改查,简化代码,但是代码中不能有复杂的逻辑,如需要复杂的逻辑需要使用APIView在试图中使用导包from rest_framework import viewsets调用先实例化 要获取的数据 然后 使用选择序列化器3.在url中配置路由导包from rest_framework.routers import DefaultRouter实例化router = DefaultRouter()注册路由r
2020-12-07 19:09:37
81
原创 使用modelviewset添加接口
实验楼中course/model中建立模型from django.db import models# Create your models here.from django.db import modelsfrom utils.MyBaseModel import Basefrom userapp.models import User#课程类别class CourseType(Base): title = models.CharField('课程类别', max_length=16).
2020-12-03 17:24:30
382
原创 微博三方登录--回调接口
微博三方登录–回调接口oauth/model中添加class OauthUser(models.Model): OAUTHTYPE = ( ('1', 'weibo'), ('2', 'weixin'), ) uid = models.CharField('三方用户id', max_length=64) user = models.ForeignKey('userapp.User', on_delete=models.CASCADE)
2020-12-03 12:05:34
399
原创 关于vue页面如何自动刷新
当我们在做项目时,我们需要做当前页面的刷新来达到数据更新的目的,在此大概总结了几种常用的页面刷新的方法。1.window.location.reload(),是原生JS提供的方法,this.$router.go(0):是vue路由里面的一种方法,这两种方法都可以达到页面刷新的目的,简单粗暴,但是用户体验不好,相当于按F5刷新页面,会有短暂的白屏,相当于页面的重新载入。2.通过路由跳转的方法刷新,具体思路是点击按钮跳转一个空白页,然后再马上跳回来(个人感觉比较麻烦,不实用)3.控制的显示与否,在全局
2020-12-01 11:46:06
2899
1
原创 axios封装
封装的意义提高代码可读性提高代码的可维护性减少代码的书写封装// src/api/http.jsimport axios from ‘axios’axios.defaults.baseURL=“http://127.0.0.1:8000/” //axios.defaults.baseURL=“http://172.16.240.175/:8000/”//全局设置⽹络超时axios.defaults.timeout = 10000;//设置请求头信息 axios.defaults
2020-11-25 11:45:21
156
原创 微博三方登录原理讲解
微博三方登录流程1.1 前端获取认证code1.在Vue页面加载时 动态发送请求获取微博授权url2.django收到请求的url后,通过微博 应用ID(client_id)和回调地址(redirect_uri) 动态 生成授 权url返回给Vue3.当用户点击上面的url进行扫码,授权成功会 跳转我们的回调界面并附加code参数4.Vue获取到微博返回的code后,会 将code发送给django后端 (上面的redirect_uri)1.2 获取微博access_token后端获取co
2020-11-05 11:01:57
709
原创 开发测试接口
创建一个测试项目创建项目和APPdjango-admin startproject BookManage 创建项目python manage.py startapp books 创建APPsetting 中注册books模型INSTALLED_APPS = [‘books.apps.BooksConfig’]# 注:pycharm无法联想,需要把apps文件夹设置为源根urls.py中添加路由urlpatterns = [ path(‘book
2020-11-04 21:59:53
157
原创 ApiView 的使用
1.APIview使用、https://www.cnblogs.com/xiaonq/p/10124104.htmlModelVIewSet 是对 APIView 封装ModelSerializer 是对 Serializer1.1 在 user/urls.py 中添加路由urlpatterns = [ path(‘apiview/’, views.UserInfoViewSet.as_view()), ]1.2 创建user/serializers.py写序列化器serializ
2020-10-28 16:57:02
632
原创 ser 序列化的使用
序列化(serializers.Serializer)1)序列化(正向查找)from rest_framework import serializersfrom users.models import UserInfoclass UserInfoSerializer(serializers.Serializer):name = serializers.CharField(min_length=3,max_length=20) # 显示普通字段ut = seriali
2020-10-28 16:09:31
750
原创 Django jwt 的使用
1、在INSTALLED_APPS中加入’rest_framework.authtoken’,INSTALLED_APPS = [‘’’‘rest_framework.authtoken’, #‘’’]2、配置jwt验证REST_FRAMEWORK = {# 身份认证‘DEFAULT_AUTHENTICATION_CLASSES’: (‘rest_framework_jwt.authentication.JSONWebTokenAuthentication’,‘rest_framew
2020-10-28 15:33:13
280
原创 Drf settings配置
过滤器1,安装 django-filter2,注册应用3,配置settings, 在view里配置可过滤的字段4,使用 查询字符串携带过滤信息REST_FRAMEWORK = {# 文档报错: AttributeError: ‘AutoSchema’ object has no attribute ‘get_link’# 用下面的设置可以解决‘DEFAULT_SCHEMA_CLASS’: ‘rest_framework.schemas.AutoSchema’,# 默认设置是:# ‘DEF
2020-10-28 14:34:43
260
原创 Django项目初始化
1.初始化项目结构└─shiyanlou_project 项目根路径 │ .gitignore 提交git仓库时,不提交的文件必须要在这里进行标注 │ README.en.md 英文(项目介绍) │ README.md # 中文项目简介 │ requirements.txt django项目安装文件 │├─celery_task 用来存放celery相关文件(以便分布式部署) │ __init__.py │├─db 数据库相关:1.数据库初始化sql脚本; 2.
2020-10-26 20:04:17
241
原创 Django基础
Django介绍作用:便捷,快速的开发数据库驱动的网站Django 的优势1.快速开发2.MVT3.功能齐全思考:1.开发数据驱动web网站2.数据分析后的结果展示界面,flask3.快速成型应用上线,就用djangoDjango设置模型MVC1.M全拼为Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作。2.V全拼为View,用于封装结果,生成页面展示的html内容。3.C全拼为Controller,用于接收请求,处理业务逻辑,与Mo
2020-10-26 19:37:16
158
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人