This commit is contained in:
sheng
2023-08-07 13:42:13 +08:00

View File

@@ -44,26 +44,16 @@ class ColumnViewSet(CustomModelViewSet):
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
payload = request.data payload = request.data
if not Role.objects.filter(pk=payload.get('role')).exists(): for model in get_custom_app_models(payload.get('app')):
return ErrorResponse(msg='角色不存在') if payload.get('model') == model['model']:
model = None
for app in get_custom_app_models():
equal = False
for model in app:
if payload.get('model') == model['model']:
equal = True
model = model
break
if equal:
break break
else: else:
return ErrorResponse(msg='模型表不存在') return ErrorResponse(msg='模型表不存在')
if Columns.objects.filter(app=model['app'], model=model['model'], field_name=payload.get('field_name')).exists(): if Columns.objects.filter(app=model['app'], model=model['model'], field_name=payload.get('field_name')).exists():
return ErrorResponse(msg='%s 字段权限已有,不可重复创建' % payload.get('title')) return ErrorResponse(msg='%s 字段权限已有,不可重复创建' % payload.get('title'))
serializer = self.get_serializer(data=request.data, request=request)
serializer.is_valid(raise_exception=True) return super().create(request, *args, **kwargs)
self.perform_create(serializer)
return DetailResponse(data=serializer.data, msg="新增成功")
@action(methods=['GET'], detail=False, permission_classes=[IsAuthenticated]) @action(methods=['GET'], detail=False, permission_classes=[IsAuthenticated])
def get_models(self, request): def get_models(self, request):