Fixing some problems in api filtering

remotes/origin/enhancement/email-actions
Jesús Espino 2013-04-01 10:29:57 +02:00
parent c3b37fd5e9
commit 224f2f5a32
2 changed files with 12 additions and 3 deletions

View File

@ -1,9 +1,18 @@
import django_filters
from rest_framework import generics from rest_framework import generics
from greenmine.scrum.serializers import * from greenmine.scrum.serializers import *
from greenmine.scrum.models import * from greenmine.scrum.models import *
from greenmine.scrum.permissions import * from greenmine.scrum.permissions import *
class UserStoryFilter(django_filters.FilterSet):
no_milestone = django_filters.NumberFilter(name="milestone", lookup_type='isnull')
class Meta:
model = UserStory
fields = ['project', 'milestone', 'no_milestone']
class SimpleFilterMixin(object): class SimpleFilterMixin(object):
filter_fields = [] filter_fields = []
filter_special_fields = [] filter_special_fields = []
@ -69,7 +78,7 @@ class MilestoneDetail(generics.RetrieveUpdateDestroyAPIView):
class UserStoryList(generics.ListCreateAPIView): class UserStoryList(generics.ListCreateAPIView):
model = UserStory model = UserStory
serializer_class = UserStorySerializer serializer_class = UserStorySerializer
filter_fields = ('project', 'milestone') filter_class = UserStoryFilter
def get_queryset(self): def get_queryset(self):
return self.model.objects.filter(project__members=self.request.user) return self.model.objects.filter(project__members=self.request.user)
@ -154,7 +163,7 @@ class TaskDetail(generics.RetrieveUpdateDestroyAPIView):
class IssueList(generics.ListCreateAPIView): class IssueList(generics.ListCreateAPIView):
model = Issue model = Issue
serializer_class = IssueSerializer serializer_class = IssueSerializer
#filter_fields = ('project') filter_fields = ('project',)
def pre_save(self, obj): def pre_save(self, obj):
obj.owner = self.request.user obj.owner = self.request.user

View File

@ -168,7 +168,7 @@ MIDDLEWARE_CLASSES = [
'greenmine.base.middleware.CoorsMiddleware', 'greenmine.base.middleware.CoorsMiddleware',
#'django.middleware.csrf.CsrfViewMiddleware', #'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware',
#'django.contrib.messages.middleware.MessageMiddleware', 'django.contrib.messages.middleware.MessageMiddleware',
#'django.middleware.clickjacking.XFrameOptionsMiddleware', #'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.transaction.TransactionMiddleware', 'django.middleware.transaction.TransactionMiddleware',
'reversion.middleware.RevisionMiddleware', 'reversion.middleware.RevisionMiddleware',