Improve voters mixins
parent
25489ad901
commit
73c148f0fb
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue