1 Star 8 Fork 8

杜赛/django-vue-tutorial

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
views.py 1.46 KB
一键复制 编辑 原始数据 按行查看 历史
杜赛 提交于 5年前 . p180
from django.contrib.auth.models import User
from rest_framework import viewsets
from rest_framework.permissions import AllowAny, IsAuthenticatedOrReadOnly
from user_info.serializers import UserRegisterSerializer
from user_info.permissions import IsSelfOrReadOnly
from rest_framework.decorators import action
from rest_framework.response import Response
from user_info.serializers import UserDetailSerializer
class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all()
serializer_class = UserRegisterSerializer
lookup_field = 'username'
def get_permissions(self):
if self.request.method == 'POST':
self.permission_classes = [AllowAny]
else:
self.permission_classes = [IsAuthenticatedOrReadOnly, IsSelfOrReadOnly]
return super().get_permissions()
@action(detail=True, methods=['get'])
def info(self, request, username=None):
queryset = User.objects.get(username=username)
serializer = UserDetailSerializer(queryset, many=False)
return Response(serializer.data)
@action(detail=False)
def sorted(self, request):
users = User.objects.all().order_by('-username')
page = self.paginate_queryset(users)
if page is not None:
serializer = self.get_serializer(page, many=True)
return self.get_paginated_response(serializer.data)
serializer = self.get_serializer(users, many=True)
return Response(serializer.data)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/stacklens/django-vue-tutorial.git
git@gitee.com:stacklens/django-vue-tutorial.git
stacklens
django-vue-tutorial
django-vue-tutorial
master

搜索帮助