功能设计与框架选型
功能设计
登录、注册、项目管理、模块管理、用例管理
同时有权限验证、接口文档、搜索、分页等功能
框架
创建应用
创建模块应用
(env) D:\code\caseplatform>python manage.py startapp module
创建用例应用
(env) D:\code\caseplatform>python manage.py startapp case
创建用户应用
(env) D:\code\caseplatform>python manage.py startapp user
注册应用
打开**caseplatform\settings.py**,添加module和case 应用
INSTALLED_APPS = ['simpleui','django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','project','rest_framework','module','case','user',]
用户应用代码设计
user\models.py设计
还记得我们之前用python manage.py createsuperuser创建管理员账号吗?既然能创建管理员账号,那么说明我们系统中存在user表,我们打开数据库看下
既然有user表,我们复用user表就可以。
user\serializers.py设计
from rest_framework import serializersfrom django.contrib.auth.models import Userclass RegisterSerializer(serializers.ModelSerializer):class Meta:model = Userfields = ('id', 'username', 'password')def create(self, validated_data):user = User.objects.create_user(**validated_data)return user
user\views.py设计
from rest_framework import mixinsfrom rest_framework import viewsetsfrom django.contrib.auth.models import Userfrom .serializer import RegisterSerializerclass UserView(mixins.CreateModelMixin, viewsets.GenericViewSet):""""""queryset = User.objects.all()serializer_class = RegisterSerializer
user\urls.py 设计
注意,这里需要新增urls.py 文件
from django.urls import pathfrom rest_framework_jwt.views import obtain_jwt_tokenfrom . import viewsurlpatterns = [path('register/', views.UserView.as_view({'post': 'create'})),path('login/', obtain_jwt_token),]
