zoukankan      html  css  js  c++  java
  • 用户中心个人信息实现的理解

    1. 前端访问个人中心页时向后端请求个人信息(id,username,mobile,email,email_active)
    2. 需要在django自带的用户模型类上增加邮箱激活状态email_active

      class User(AbstractUser):
          """
          用户信息
          """
          mobile = models.CharField(max_length=11, unique=True, verbose_name="手机号")
          email_active = models.BooleanField(default=False, verbose_name='邮箱验证状态')
    3. 进行数据库迁移

      python manage.py makemigrations
      python manage.py migrate
    4. 在users/serializers.py中添加序列化器,用于将模型对象序列化后返回给前端

      class UserDetailSerializer(serializers.ModelSerializer):
          """
          用户详细信息序列化器
          """
          class Meta:
              model = User
              fields = ('id', 'username', 'mobile', 'email', 'email_active')
    5. 在users/views.py 中新建视图
      from rest_framework.permissions import IsAuthenticated
      
      class UserDetailView(RetrieveAPIView):
          """
          用户详情
          """
          serializer_class = serializers.UserDetailSerializer
          permission_classes = [IsAuthenticated]
      
          def get_object(self):
              return self.request.user

      IsAuthenticated 权限 通过认证用户可访问,登陆过的。重写get_object因为默认从url命名参数中获取pk查询对象

    6. 在urls.py中添加路由
  • 相关阅读:
    DGL学习(一):使用DGL跑一个最简单的GCN
    2020-7-15
    2020-7-14
    2020-7-13
    hdu 6118度度熊的交易计划(费用流)
    玲珑OJ Down the Rabbit Hole (DFS序查找路径)
    csu 1982:小M的移动硬盘(双向链表)
    csu 1930 roads(DFS)
    LuoGuP4721:【模板】分治 FFT
    LuoGuP4284:[SHOI2014]概率充电器
  • 原文地址:https://www.cnblogs.com/whigym/p/10009249.html
Copyright © 2011-2022 走看看