fix: testitem支持tag查询

This commit is contained in:
caoqianming 2023-11-03 19:13:36 +08:00
parent 1c94c4c5af
commit f747cc817b
2 changed files with 16 additions and 6 deletions

View File

@ -1,5 +1,6 @@
from django_filters import rest_framework as filters
from apps.qm.models import QuaStat
from apps.qm.models import QuaStat, TestItem
class QuaStatFilter(filters.FilterSet):
class Meta:
@ -11,4 +12,15 @@ class QuaStatFilter(filters.FilterSet):
"sflog": ["exact"],
"sflog__mgroup": ["exact"],
"sflog__end_time": ["day", "month", "year", "lt"],
}
}
class TestItemFilter(filters.FilterSet):
tag = filters.CharFilter(method='filter_tag')
class Meta:
model = TestItem
fields = ['tag']
def filter_tag(self, queryset, name, value):
return queryset.filter(tags__contains=value)

View File

@ -10,7 +10,7 @@ import datetime
from apps.utils.viewsets import CustomGenericViewSet, CustomModelViewSet
from apps.wpm.models import SfLog
from apps.qm.filters import QuaStatFilter
from apps.qm.filters import QuaStatFilter, TestItemFilter
# Create your views here.
@ -23,9 +23,7 @@ class TestItemViewSet(ListModelMixin, CustomGenericViewSet):
perms_map = {'get': '*'}
queryset = TestItem.objects.all()
serializer_class = TestItemSerializer
filterset_fields = {
"tags": ["contains"]
}
filterset_class = TestItemFilter
ordering = ['id']