Python全系列 教程
3567个小节阅读:5929.1k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
修改personal_app\serialiazers.py
模块,添加获取个人订阅课程名称列表序列化器
xxxxxxxxxx
141from rest_framework import serializers
2
3from .models import UserCourse
4
5
6class UserCourseNameListSerializer(serializers.ModelSerializer):
7 '''
8 获取用户订阅课程的名称,用于个人简略信息展示
9 '''
10 id = serializers.IntegerField(source='course.id')
11 course_name = serializers.CharField(source='course.name')
12 class Meta:
13 model = UserCourse
14 fields = ('id', 'course_name')
修改personal_app\views.py
模块,添加获取个人订阅课程名称列表视图
xxxxxxxxxx
261from rest_framework.views import APIView
2from rest_framework.response import Response
3
4from .models import UserCourse
5from .serializers import UserCourseNameListSerializer
6from user_app.utils import verify_token
7from user_app.models import User
8
9class UserCourseNameListView(APIView):
10 def get(self, request, format=None):
11 # 根据token获取用户的唯一标识
12 data = verify_token(request.META.get('HTTP_AUTHORIZATION'))
13 if data:
14 # 根据用户的唯一标识查询用户信息
15 try:
16 user = User.objects.filter(phone = data.get('phone')).first()
17 except Exception as e:
18 return Response({'message': '用户信息有误'}, status=400)
19 # 根据用户信息查询对应的课程信息
20 user_course = UserCourse.objects.filter(user=user)
21 # 序列化数据
22 serializer = UserCourseNameListSerializer(user_course, many=True)
23 # 返回数据
24 return Response(serializer.data)
25 else:
26 return Response({'message': '请先登录'}, status=401)
修改personal_app\urls.py
模块,添加获取个人订阅课程名称列表接口路由
xxxxxxxxxx
71from django.urls import path
2
3from . import views
4
5urlpatterns = [
6 path('user_courses_name/', views.UserCourseNameListView.as_view()),
7]
配置bz_edu_project\urls.py
基本信息,增加子应用与主应用路由的链接
xxxxxxxxxx
71from django.contrib import admin
2from django.urls import path,include
3
4urlpatterns = [
5 path('admin/', admin.site.urls),
6 path('api/',include('personal_app.urls')),
7]