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