Restrict object permissions to owners
This commit is contained in:
		
							
								
								
									
										3
									
								
								server/server/api/permissions.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								server/server/api/permissions.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| from rest_framework import permissions | ||||
|  | ||||
| # Add permissions here. | ||||
| @@ -4,21 +4,33 @@ from rest_framework import permissions | ||||
| from server.api import serializers, models | ||||
|  | ||||
| class UserViewSet(viewsets.ModelViewSet): | ||||
|     queryset = User.objects.all().order_by('-date_joined') | ||||
|     queryset = User.objects.all() | ||||
|     serializer_class = serializers.UserSerializer | ||||
|     permission_classes = [permissions.IsAuthenticated] | ||||
|  | ||||
|     def get_queryset(self): | ||||
|         return [self.request.user] | ||||
|  | ||||
| class AccountViewSet(viewsets.ModelViewSet): | ||||
|     queryset = models.Account.objects.all() | ||||
|     serializer_class = serializers.AccountSerializer | ||||
|     permission_classes = [permissions.IsAuthenticated] | ||||
|  | ||||
|     def get_queryset(self): | ||||
|         return self.queryset.filter(users=self.request.user) | ||||
|  | ||||
| class StackViewSet(viewsets.ModelViewSet): | ||||
|     queryset = models.Stack.objects.all() | ||||
|     serializer_class = serializers.StackSerializer | ||||
|     permission_classes = [permissions.IsAuthenticated] | ||||
|  | ||||
|     def get_queryset(self): | ||||
|         return self.queryset.filter(account__users=self.request.user) | ||||
|  | ||||
| class TransactionViewSet(viewsets.ModelViewSet): | ||||
|     queryset = models.Transaction.objects.all() | ||||
|     serializer_class = serializers.TransactionSerializer | ||||
|     permission_classes = [permissions.IsAuthenticated] | ||||
|  | ||||
|     def get_queryset(self): | ||||
|         return self.queryset.filter(stack__account__users=self.request.user) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user