保存分组表数据
在保存数据之前我们需要权限表的数据内容展示在权限中
1、获取权限表数据
接口分析
请求方式: GET /meiduo_admin/permission/simple/
请求参数: 通过请求头传递jwt token数据。
返回数据: JSON
[
{
"id": "权限类型id",
"name": "权限类型名称"
},
...
]
返回值 | 类型 | 是否必须 | 说明 |
---|---|---|---|
Id | int | 是 | 权限类型id |
name | 数组 | 是 | 权限类型名称 |
后端实现
from django.contrib.auth.models import Permission, ContentType, Group
class GroupView(ModelViewSet):
serializer_class = GroupSerialzier
queryset = Group.objects.all()
pagination_class = PageNum
# 获取权限表数据
def simple(self, reqeust):
pers = Permission.objects.all()
ser = PermissionSerialzier(pers, many=True) # 使用以前定义的全选序列化器
return Response(ser.data)
2、保存权限表数据
接口分析
请求方式:POST /meiduo_admin/permission/groups/
请求参数: 通过请求头传递jwt token数据。
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
name | str | 是 | 组名称 |
permissions | str | 是 | ["权限id", ...] |
返回数据: JSON
{
"id": "组id",
"name": "组名称"
}
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
id | Int | 是 | 组id |
name | Str | 是 | 组名称 |
后端实现
from django.contrib.auth.models import Permission, ContentType, Group
# GroupView继承的是ModelViewSet 所以保存逻辑还是使用同一个类视图
class GroupView(ModelViewSet):
serializer_class = GroupSerialzier
queryset = Group.objects.all()
pagination_class = PageNum
# 获取权限表数据
def simple(self, reqeust):
pers = Permission.objects.all()
ser = PermissionSerialzier(pers, many=True) # 使用以前定义的全选序列化器
return Response(ser.data)