如何更改 django-filter 过滤键?
How to change django-filter filtering key?
我试过这种方法
class ProductFilter(django_filters.FilterSet):
section = django_filters.ModelChoiceFilter(widget=CustomLinkWidget, queryset=Category.objects.filter(parent=None),
label='Раздел', field_name='subcategory__parent__parent__slug')
不幸的是过滤器继续这样做
http://localhost:8000/products/mediasabak-sub/mediasabak-sub-sub/?section=1
但我想要这样的东西
http://localhost:8000/products/mediasabak-sub/mediasabak-sub-sub/?section=section_slug_here
fild_name = 'foreign_key_field_name__slug'
to_field_name = 'slug'
这两个关键字参数很重要。
to_field_name
没有 field_name
和
field_name
没有 to_field_name
就无法工作
我试过这种方法
class ProductFilter(django_filters.FilterSet):
section = django_filters.ModelChoiceFilter(widget=CustomLinkWidget, queryset=Category.objects.filter(parent=None),
label='Раздел', field_name='subcategory__parent__parent__slug')
不幸的是过滤器继续这样做
http://localhost:8000/products/mediasabak-sub/mediasabak-sub-sub/?section=1
但我想要这样的东西
http://localhost:8000/products/mediasabak-sub/mediasabak-sub-sub/?section=section_slug_here
fild_name = 'foreign_key_field_name__slug'
to_field_name = 'slug'
这两个关键字参数很重要。
to_field_name
没有 field_name
和
field_name
没有 to_field_name