개체 수준 권한
예 http://www.django-rest-framework.org/tutorial/4-authentication-and-permissions/#object-level-permissions장고 : 개체 수준 권한 DRY
class IsOwnerOrReadOnly(permissions.BasePermission):
"""
Custom permission to only allow owners of an object to edit it.
"""
def has_object_permission(self, request, view, obj):
# Read permissions are allowed to any request,
# so we'll always allow GET, HEAD or OPTIONS requests.
if request.method in permissions.SAFE_METHODS:
return True
# Write permissions are only allowed to the owner of the snippet.
return obj.owner == request.user
내 필요성 : 모든 검색어 세트는 사용자가 나는 장고-ORM의 검색어를 할
편집 할 수있는 객체 주어진 사용자가 편집 할 수있는 모든 객체를 포함합니다.
은 내가
하지
하지만 그건 DRY DRY 아니다 (OR와 별개로) 복잡한 장고-ORM 필터를 만들어이 문제를 해결할 수있는 것 같아요. 두 번 코드를 코딩해야하기 때문에 DRY가 아닙니다. has_object_permission()
에서 한 번, 장고 - 오움 필터에서 한 번.
질문
중복없이 검사 권한을 내 필요 (사용자가 편집 할 수있는 객체 모두의 검색어)를 해결하는 방법?
이것은 내가 찾던 답변이 아니지만 다음 사항에 대해 생각해 주셔서 감사합니다. – guettli
그래,이 또한 저를 방해하고 장고 REST 프레임 워크에 적합하지 않은 무언가입니다. 다른 옵션이 있는지 누구보다 기대하고 있습니다. – Linovia