Skip to content

Commit 0bac2da

Browse files
committed
Исправленаа ошибка доступа при созданию компаний
1 parent 888d4fe commit 0bac2da

2 files changed

Lines changed: 5 additions & 8 deletions

File tree

projects/permissions.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ class IsProjectLeaderOrReadOnly(BasePermission):
159159
Создавать/изменять/удалять может только лидер проекта.
160160
"""
161161

162-
message = "Только лидер проекта может создавать, изменять или удалять цели."
162+
message = "Только лидер проекта может создавать, изменять или удалять параметры."
163163

164164
def has_permission(self, request, view):
165165
if request.method in SAFE_METHODS:
@@ -169,7 +169,7 @@ def has_permission(self, request, view):
169169
return False
170170

171171
project_pk = view.kwargs.get("project_pk")
172-
project_id = project_pk or request.data.get("project")
172+
project_id = project_pk or view.kwargs.get("project_id") or request.data.get("project")
173173
if not project_id:
174174
return False
175175

projects/views.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -943,9 +943,7 @@ def patch(self, request, project_id: int, company_id: int):
943943
return link_or_resp
944944
link = link_or_resp
945945

946-
perm_resp = self._check_permissions(request, project)
947-
if perm_resp:
948-
return perm_resp
946+
self.check_object_permissions(request, link)
949947

950948
serializer = ProjectCompanyUpdateSerializer(
951949
link, data=request.data, partial=True, context={"request": request}
@@ -988,9 +986,8 @@ def delete(self, request, project_id: int, company_id: int):
988986
return link_or_resp
989987
link = link_or_resp
990988

991-
perm_resp = self._check_permissions(request, project)
992-
if perm_resp:
993-
return perm_resp
989+
# объектная проверка прав
990+
self.check_object_permissions(request, link)
994991

995992
link.delete()
996993
return Response(status=status.HTTP_204_NO_CONTENT)

0 commit comments

Comments
 (0)