Fixing some problems in api filtering
parent
c3b37fd5e9
commit
224f2f5a32
|
@ -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
|
||||||
|
|
|
@ -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',
|
||||||
|
|
Loading…
Reference in New Issue