用户中心个人信息
前端訪問個(gè)人信息頁面時(shí),需要向后端請(qǐng)求個(gè)人信息。
在本頁面中要顯示用戶的Email郵箱信息,而對(duì)于郵箱信息我們要實(shí)現(xiàn)對(duì)于郵箱的驗(yàn)證功能,并在本頁面中顯示郵箱是否已驗(yàn)證,如下所示,
所以我們需要修改User模型類,增加郵箱是否驗(yàn)證的字段。
class User(AbstractUser):""" 用戶信息 """ mobile = models.CharField(max_length=11, unique=True, verbose_name="手機(jī)號(hào)") email_active = models.BooleanField(default=False, verbose_name='郵箱驗(yàn)證狀態(tài)')進(jìn)行數(shù)據(jù)庫遷移
python manage.py makemigrations python manage.py migrate后端接口設(shè)計(jì):
請(qǐng)求方式: GET /user/
請(qǐng)求參數(shù): 無
返回?cái)?shù)據(jù): JSON
| id | int | 是 | 用戶id |
| username | str | 是 | 用戶名 |
| mobile | str | 是 | 手機(jī)號(hào) |
| str | 是 | email郵箱 | |
| email_active | bool | 是 | 郵箱是否通過驗(yàn)證 |
在users/serializers.py中創(chuàng)建序列化器
class UserDetailSerializer(serializers.ModelSerializer):""" 用戶詳細(xì)信息序列化器 """ class Meta: model = User fields = ('id', 'username', 'mobile', 'email', 'email_active')在users/views.py 中新建視圖
from rest_framework.permissions import IsAuthenticatedclass UserDetailView(RetrieveAPIView): """ 用戶詳情 """ serializer_class = serializers.UserDetailSerializer permission_classes = [IsAuthenticated] def get_object(self): return self.request.user注意:訪問視圖必須要求用戶已通過認(rèn)證(即登錄之后)
轉(zhuǎn)載于:https://www.cnblogs.com/hzlnice/p/9393010.html
總結(jié)
- 上一篇: Python_求身体质量指数bmi的多种
- 下一篇: 打喷嚏时该说什么