做一个Django项目(1、8返回用户基本信息)

  1. 使用RetrieveAPIView(内部实现了get方法),只需要指定序列化器和模型即可
  2. 实现
    1. 添加序列化器
      class UserDetailSerializer(serializers.ModelSerializer):
          """ 没有特殊要求仅指定字段即可"""
          class Meta:
              model = User
              fields = ['id', 'username', 'mobile', 'email', 'email_active']

       

    2. 编写view
      class UserDetailView(RetrieveAPIView):
      
          # 指定序列化器
          serializer_class = UserDetailSerializer
          # 设置权限
          permission_classes = [IsAuthenticated]
      
          # 通过request获取用户
          def get_object(self):
              # print(self.request.user)
              return self.request.user

       

    3. 添加url
      # 在urls.py 中添加路由
          # 用户基本信息
          url(r'^user/$', views.UserDetailView.as_view()),

       

你可能感兴趣的:(Django)