Improve voters mixins

remotes/origin/logger
David Barragán Merino 2015-09-30 10:58:28 +02:00
parent 25489ad901
commit 73c148f0fb
2 changed files with 11 additions and 4 deletions

View File

@ -44,6 +44,7 @@ from taiga.projects.mixins.on_destroy import MoveOnDestroyMixin
from taiga.projects.userstories.models import UserStory, RolePoints
from taiga.projects.tasks.models import Task
from taiga.projects.issues.models import Issue
from taiga.projects.votes.mixins.viewsets import LikedResourceMixin, FansViewSetMixin
from taiga.permissions import service as permissions_service
from . import serializers
@ -51,8 +52,6 @@ from . import models
from . import permissions
from . import services
from .votes.mixins.viewsets import LikedResourceMixin, VotersViewSetMixin
######################################################
## Project
@ -292,7 +291,7 @@ class ProjectViewSet(LikedResourceMixin, HistoryResourceMixin, ModelCrudViewSet)
return response.NoContent()
class ProjectFansViewSet(VotersViewSetMixin, ModelListViewSet):
class ProjectFansViewSet(FansViewSetMixin, ModelListViewSet):
permission_classes = (permissions.ProjectFansPermission,)
resource_model = models.Project

View File

@ -79,7 +79,7 @@ class VotedResourceMixin(BaseVotedResource):
return self._remove_vote("downvote", request, pk)
class VotersViewSetMixin:
class BaseVotersViewSetMixin:
# Is a ModelListViewSet with two required params: permission_classes and resource_model
serializer_class = serializers.VoterSerializer
list_serializer_class = serializers.VoterSerializer
@ -112,3 +112,11 @@ class VotersViewSetMixin:
def get_queryset(self):
resource = self.resource_model.objects.get(pk=self.kwargs.get("resource_id"))
return services.get_voters(resource)
class VotersViewSetMixin(BaseVotersViewSetMixin):
pass
class FansViewSetMixin(BaseVotersViewSetMixin):
pass