Django-filter 字段名称是 python 内置关键字
Django-filter field name is a python builtin keyword
我正在尝试使用 DRF 和 django-filter 重建遗留 API。其中一个字段名称是 from
,但
from = DateTimeFilter(field_name="created_dt", lookup_expr="gte")
无效 Python。我可以命名变量
from_ = DateTimeFilter(...)
但仍将 API 参数作为 ?from=
暴露给用户?
覆盖 __init__()
方法 FilterSet
class
from django_filters import rest_framework as drf_filters
class FooFilterSet(drf_filters.FilterSet):
foo = drf_filters.CharFilter() # some random field
<b>def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.filters["from"] = drf_filters.DateTimeFilter(field_name="created_dt", lookup_expr="gte")</b>
class Meta:
model = Foo
fields = ('foo', <b>'from'</b>)
我正在尝试使用 DRF 和 django-filter 重建遗留 API。其中一个字段名称是 from
,但
from = DateTimeFilter(field_name="created_dt", lookup_expr="gte")
无效 Python。我可以命名变量
from_ = DateTimeFilter(...)
但仍将 API 参数作为 ?from=
暴露给用户?
覆盖 __init__()
方法 FilterSet
class
from django_filters import rest_framework as drf_filters
class FooFilterSet(drf_filters.FilterSet):
foo = drf_filters.CharFilter() # some random field
<b>def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.filters["from"] = drf_filters.DateTimeFilter(field_name="created_dt", lookup_expr="gte")</b>
class Meta:
model = Foo
fields = ('foo', <b>'from'</b>)