From 17f5a056e23a3fe60551eaba93bcd8c892e8a33b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Thu, 28 Mar 2013 09:59:59 +0100 Subject: [PATCH] Adding filtering to api resources --- greenmine/scrum/api.py | 10 ++++++++++ greenmine/settings/common.py | 3 ++- requirements.txt | 1 + 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/greenmine/scrum/api.py b/greenmine/scrum/api.py index 7d7ceacc..80c5aec4 100644 --- a/greenmine/scrum/api.py +++ b/greenmine/scrum/api.py @@ -17,6 +17,7 @@ class ProjectDetail(generics.RetrieveUpdateDestroyAPIView): class MilestoneList(generics.ListCreateAPIView): model = Milestone serializer_class = MilestoneSerializer + filter_fields = ('project_id') class MilestoneDetail(generics.RetrieveUpdateDestroyAPIView): @@ -27,6 +28,7 @@ class MilestoneDetail(generics.RetrieveUpdateDestroyAPIView): class UserStoryList(generics.ListCreateAPIView): model = UserStory serializer_class = UserStorySerializer + filter_fields = ('project_id', 'milestone_id') class UserStoryDetail(generics.RetrieveUpdateDestroyAPIView): @@ -57,6 +59,7 @@ class ChangeAttachmentDetail(generics.RetrieveUpdateDestroyAPIView): class TaskList(generics.ListCreateAPIView): model = Task serializer_class = TaskSerializer + filter_fields = ('user_story_id', 'milestone_id', 'project_id') class TaskDetail(generics.RetrieveUpdateDestroyAPIView): @@ -67,6 +70,7 @@ class TaskDetail(generics.RetrieveUpdateDestroyAPIView): class SeverityList(generics.ListCreateAPIView): model = Severity serializer_class = SeveritySerializer + filter_fields = ('project_id') class SeverityDetail(generics.RetrieveUpdateDestroyAPIView): @@ -77,6 +81,7 @@ class SeverityDetail(generics.RetrieveUpdateDestroyAPIView): class IssueStatusList(generics.ListCreateAPIView): model = IssueStatus serializer_class = IssueStatusSerializer + filter_fields = ('project_id') class IssueStatusDetail(generics.RetrieveUpdateDestroyAPIView): @@ -87,6 +92,7 @@ class IssueStatusDetail(generics.RetrieveUpdateDestroyAPIView): class TaskStatusList(generics.ListCreateAPIView): model = TaskStatus serializer_class = TaskStatusSerializer + filter_fields = ('project_id') class TaskStatusDetail(generics.RetrieveUpdateDestroyAPIView): @@ -97,6 +103,7 @@ class TaskStatusDetail(generics.RetrieveUpdateDestroyAPIView): class UserStoryStatusList(generics.ListCreateAPIView): model = UserStoryStatus serializer_class = UserStoryStatusSerializer + filter_fields = ('project_id') class UserStoryStatusDetail(generics.RetrieveUpdateDestroyAPIView): @@ -107,6 +114,7 @@ class UserStoryStatusDetail(generics.RetrieveUpdateDestroyAPIView): class PriorityList(generics.ListCreateAPIView): model = Priority serializer_class = PrioritySerializer + filter_fields = ('project_id') class PriorityDetail(generics.RetrieveUpdateDestroyAPIView): @@ -117,6 +125,7 @@ class PriorityDetail(generics.RetrieveUpdateDestroyAPIView): class IssueTypeList(generics.ListCreateAPIView): model = IssueType serializer_class = IssueTypeSerializer + filter_fields = ('project_id') class IssueTypeDetail(generics.RetrieveUpdateDestroyAPIView): @@ -127,6 +136,7 @@ class IssueTypeDetail(generics.RetrieveUpdateDestroyAPIView): class PointsList(generics.ListCreateAPIView): model = Points serializer_class = PointsSerializer + filter_fields = ('project_id') class PointsDetail(generics.RetrieveUpdateDestroyAPIView): diff --git a/greenmine/settings/common.py b/greenmine/settings/common.py index 97e22399..5ee18652 100644 --- a/greenmine/settings/common.py +++ b/greenmine/settings/common.py @@ -321,7 +321,8 @@ HAYSTACK_DEFAULT_OPERATOR = 'AND' REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework.authentication.SessionAuthentication', - ) + ), + 'FILTER_BACKEND': 'rest_framework.filters.DjangoFilterBackend', } from .appdefaults import * diff --git a/requirements.txt b/requirements.txt index b1706d53..33c302c9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -18,3 +18,4 @@ python-dateutil==2.1 pytz==2013b six==1.3.0 djangorestframework==2.2.5 +django-filter==0.6