1

教程说:

class ProductFilter(django_filters.FilterSet):
    min_price = django_filters.NumberFilter(lookup_type='gte')
    max_price = django_filters.NumberFilter(lookup_type='lte')
    class Meta:
        model = Product
        fields = ['category', 'in_stock', 'min_price', 'max_price']

但是当我尝试这样做时,我得到一个错误:

FieldError: Cannot resolve keyword u'min_price' into field. Choices are: cantidad, datetime, enlace, id, id_fila, nivel

min_price不在我的模型中,但我需要创建一个新参数。(这是一个例子)我真的需要过滤日期。

4

1 回答 1

4

请参阅django-filter 文档

由于您的min_pricemax_price过滤器与它们引用的模型字段的名称不同,因此您需要提供name参数。

class ProductFilter(django_filters.FilterSet):
    min_price = django_filters.NumberFilter(name='price', lookup_type='gte')
    max_price = django_filters.NumberFilter(name='price', lookup_type='lte')
    class Meta:
        model = Product
        fields = ['category', 'in_stock', 'min_price', 'max_price']
于 2013-04-18T09:15:40.253 回答