mirror of
https://github.com/seanmorley15/AdventureLog.git
synced 2025-07-22 06:19:38 +02:00
15 lines
548 B
Python
15 lines
548 B
Python
|
from rest_framework import permissions
|
||
|
|
||
|
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 object.
|
||
|
return obj.user_id == request.user
|