Improving by_ref endpoints and allowing to use the project slug

remotes/origin/issue/4795/notification_even_they_are_disabled
Alejandro Alonso 2016-07-06 14:13:09 +02:00 committed by David Barragán Merino
parent 9c8a630fc6
commit dd4a1cd9e7
3 changed files with 33 additions and 6 deletions

View File

@ -183,9 +183,18 @@ class IssueViewSet(OCCResourceMixin, VotedResourceMixin, HistoryResourceMixin, W
@list_route(methods=["GET"]) @list_route(methods=["GET"])
def by_ref(self, request): def by_ref(self, request):
ref = request.QUERY_PARAMS.get("ref", None) retrieve_kwargs = {
"ref": request.QUERY_PARAMS.get("ref", None)
}
project_id = request.QUERY_PARAMS.get("project", None) project_id = request.QUERY_PARAMS.get("project", None)
return self.retrieve(request, project_id=project_id, ref=ref) if project_id is not None:
retrieve_kwargs["project_id"] = project_id
project_slug = request.QUERY_PARAMS.get("project__slug", None)
if project_slug is not None:
retrieve_kwargs["project__slug"] = project_slug
return self.retrieve(request, **retrieve_kwargs)
@list_route(methods=["GET"]) @list_route(methods=["GET"])
def filters_data(self, request, *args, **kwargs): def filters_data(self, request, *args, **kwargs):

View File

@ -163,9 +163,18 @@ class TaskViewSet(OCCResourceMixin, VotedResourceMixin, HistoryResourceMixin,
@list_route(methods=["GET"]) @list_route(methods=["GET"])
def by_ref(self, request): def by_ref(self, request):
ref = request.QUERY_PARAMS.get("ref", None) retrieve_kwargs = {
"ref": request.QUERY_PARAMS.get("ref", None)
}
project_id = request.QUERY_PARAMS.get("project", None) project_id = request.QUERY_PARAMS.get("project", None)
return self.retrieve(request, project_id=project_id, ref=ref) if project_id is not None:
retrieve_kwargs["project_id"] = project_id
project_slug = request.QUERY_PARAMS.get("project__slug", None)
if project_slug is not None:
retrieve_kwargs["project__slug"] = project_slug
return self.retrieve(request, **retrieve_kwargs)
@list_route(methods=["GET"]) @list_route(methods=["GET"])
def csv(self, request): def csv(self, request):

View File

@ -224,9 +224,18 @@ class UserStoryViewSet(OCCResourceMixin, VotedResourceMixin, HistoryResourceMixi
@list_route(methods=["GET"]) @list_route(methods=["GET"])
def by_ref(self, request): def by_ref(self, request):
ref = request.QUERY_PARAMS.get("ref", None) retrieve_kwargs = {
"ref": request.QUERY_PARAMS.get("ref", None)
}
project_id = request.QUERY_PARAMS.get("project", None) project_id = request.QUERY_PARAMS.get("project", None)
return self.retrieve(request, project_id=project_id, ref=ref) if project_id is not None:
retrieve_kwargs["project_id"] = project_id
project_slug = request.QUERY_PARAMS.get("project__slug", None)
if project_slug is not None:
retrieve_kwargs["project__slug"] = project_slug
return self.retrieve(request, **retrieve_kwargs)
@list_route(methods=["GET"]) @list_route(methods=["GET"])
def csv(self, request): def csv(self, request):