From cc12d80c920ce0d1f4747b0200fb7f18565a1836 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 7 May 2025 10:25:07 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20myjsonfield=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/utils/filters.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/utils/filters.py b/apps/utils/filters.py index 0e950877..18baa0ef 100755 --- a/apps/utils/filters.py +++ b/apps/utils/filters.py @@ -3,13 +3,16 @@ from django_filters import rest_framework as filters class MyJsonListFilter(filters.CharFilter): def filter(self, qs, value): + if value in ['all', '']: return qs elif ',' in value: value_l = value.split(',') qsx = qs.none() for i in value_l: - qsx = qsx | qs.filter(tags__contains=i) + kv = {f"{self.field_name}__contains": i} + qsx = qsx | qs.filter(**kv) return qsx else: - return qs.filter(tags__contains=value) + kv = {f"{self.field_name}__contains": value} + return qs.filter(**kv)