perf: 资产支持根据协议搜索

pull/10596/head
ibuler 2023-05-30 17:12:14 +08:00 committed by Jiangjie.Bai
parent f4c29a262a
commit d285daa1c1
1 changed files with 6 additions and 0 deletions

View File

@ -35,6 +35,7 @@ class AssetFilterSet(BaseFilterSet):
domain = django_filters.CharFilter(method='filter_domain')
type = django_filters.CharFilter(field_name="platform__type", lookup_expr="exact")
category = django_filters.CharFilter(field_name="platform__category", lookup_expr="exact")
protocols = django_filters.CharFilter(method='filter_protocols')
domain_enabled = django_filters.BooleanFilter(
field_name="platform__domain_enabled", lookup_expr="exact"
)
@ -78,6 +79,11 @@ class AssetFilterSet(BaseFilterSet):
else:
return queryset.filter(domain__name__contains=value)
@staticmethod
def filter_protocols(queryset, name, value):
value = value.split(',')
return queryset.filter(protocols__name__in=value)
@staticmethod
def filter_labels(queryset, name, value):
if ':' in value: