Как изменить ключ фильтрации django-фильтра?

Я пробовал таким образом

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

1 ответ

Решение
fild_name = 'foreign_key_field_name__slug'
to_field_name = 'slug'

эти два ключевых аргумента важны.

to_field_name не работает без field_name а такжеfield_name не работает без to_field_name

Другие вопросы по тегам