Я использую сторонний Django-фильтр, чтобы создать панель поиска для моих сообщений в блоге.
import django_filters
from .models import Post
from django.db import models
class PostFilter(django_filters.FilterSet):
title = django_filters.CharFilter(field_name='title')
class Meta:
model = Post
fields = {
'title': ['icontains'],
}
#I've tried using filter_overrides to no success
filter_overrides = {
models.CharField: {
'filter_class': django_filters.CharFilter,
'extra': lambda f: {
'lookup_expr': 'icontains',
},
}
}
Я прочитал, что CharFilter и TextFilter по умолчанию точны, однако я думал, что я изменял это ниже.Я пробовал содержит и иконки.Поиск передается по URL, например: "... blog /? Title = foo".Я вручную набрал URL-адрес «... / blog /? Title__icontains = foo», и это работает, однако рабочий URL-адрес не является URL-адресом, который передается после того, как я нажимаю кнопку поиска.Буду признателен за любую помощь, спасибо.
* edit: чтобы было ясно, фильтр работает, но работает так, как будто он «точный», а не «содержит».он найдет результаты, но только если я буду искать полное название