Django фильтр qs, содержащий имя файла, не работает с подчеркиваниями
Моя цель - отфильтровать, если имя загруженного документа содержит search (простая строка из поля ввода, предоставленная пользователем).
Странно, но это работает для длинных подстрок, но не для коротких.
Пример
Мой запрос фильтра следующий:
Tab.objects.filter(document__file__icontains=search)
где Tab в простейшей форме представляет собой класс Model, такой как:
class Tab(models.Model):
name = models.CharField(max_length=50)
и Document - еще один класс Model, имеющий отношение к Tabs и поле file.
class Document(models.Model):
tab = models.ForeignKey(Tab, on_delete=models.CASCADE)
file = models.FileField(upload_to=custom_location)
Странное поведение
Я загрузил файл под названием example_test_123.pdf и если мой search = example_test или test_123.pdf, то это приводит к попаданию, как и ожидалось.
Однако, если search = test фильтр не находит файл.
Известно ли такое поведение или я что-то упускаю? Возможно ли, что встроенное имя file создает какие-то проблемы?
Спасибо.
(Django 3.2.9 и Python 3.6.8)