随笔分类 - drf
摘要:目的 (gender = models.SmallIntegerField(verbose_name='性别', choices=((1, "男"), (2, "女")))) 输入 { "name": "szw", "gender": 2 } 返回 { "id": 2, "age": 18, "ge
阅读全文
摘要:models class Depart(models.Model): name = models.CharField(verbose_name='部门名', max_length=32) class Tag(models.Model): name = models.CharField(verbose
阅读全文
摘要:models class Depart(models.Model): name = models.CharField(verbose_name='部门名', max_length=32) class Tag(models.Model): name = models.CharField(verbose
阅读全文
摘要:model class Depart(models.Model): name = models.CharField(verbose_name='部门名', max_length=32) level = models.IntegerField(verbose_name='等级',default=1)
阅读全文
摘要:序列化器Serializer class DepartSerializer(serializers.Serializer): name = serializers.CharField(required=True, max_length=3, min_length=2) age = serialize
阅读全文
摘要:models class Depart(models.Model): name = models.CharField(verbose_name='部门名', max_length=32) 序列化器 class DepartSerializer(serializers.ModelSerializer)
阅读全文
摘要:models class Depart(models.Model): name = models.CharField(verbose_name='部门名', max_length=32) class Tag(models.Model): name = models.CharField(verbose
阅读全文
摘要:models class Depart(models.Model): name = models.CharField(verbose_name='部门名', max_length=32) class UserInfo(models.Model): username = models.CharFiel
阅读全文
摘要:默认解析器 JSONParser, FormParser, MultiPartParser view class UserView(OrPermissionAPIView): from rest_framework.parsers import JSONParser, FormParser from
阅读全文
摘要:路由 urlpatterns = [ path('api/user/', views.UserView.as_view(),name='user'), ] view class UserView(OrPermissionAPIView): def get(self, request, *args,
阅读全文
摘要:路由 urlpatterns = [ path('api/<str:version>/user/', views.UserView.as_view(),name='user'), ] settings REST_FRAMEWORK = { # 版本配置 "DEFAULT_VERSIONING_CLA
阅读全文
摘要:视图 from rest_framework.versioning import QueryParameterVersioning class OrderView(OrPermissionAPIView): versioning_class = QueryParameterVersioning de
阅读全文
摘要:重写SimpleRateThrottle的get_cache_key from rest_framework.throttling import SimpleRateThrottle from django.core.cache import cache as default_cache class
阅读全文
摘要:原权限判断代码 def check_permissions(self, request): """ Check if the request should be permitted. Raises an appropriate exception if the request is not perm
阅读全文
摘要:组件类(返回True为通过) from rest_framework.permissions import BasePermission class DemoPermission(BasePermission): # 自定义失败的返回信息 message = {"status": False, 'c
阅读全文
摘要:建表 from django.db import models class UserInfo(models.Model): username = models.CharField(verbose_name='用户名', max_length=32) password = models.CharFie
阅读全文
摘要:class BaseAuthentication: """ All authentication classes should extend BaseAuthentication. """ def authenticate(self, request): """ 如果子类继承BaseAuthenti
阅读全文
摘要:现象 # 兜底认证,直接失败 class NoAuthentication(BaseAuthentication): def authenticate(self, request): raise AuthenticationFailed('认证失败') class AuthenticationFai
阅读全文
摘要:实现效果:除登录接口无需认证,其他接口如果从params或者头部AUTHORIZATION没有获取到token,则直接认证失败。如果去掉NoAuthentication,则支持匿名访问 认证类 from rest_framework.authentication import BaseAuthent
阅读全文
摘要:认证类(不能写在视图里) rom rest_framework.authentication import BaseAuthentication from rest_framework.exceptions import AuthenticationFailed class MyAuthentica
阅读全文