Django Администратор добавляет настраиваемую функцию поиска с пустыми кортежами search_fields. - PullRequest
0 голосов
/ 23 марта 2020

У меня есть следующий get_search_results в моем ModelAdmin для поиска по номеру телефона и электронной почте пользователя:

def get_search_results(self, request, queryset, search_term):
        queryset, use_distinct = super().get_search_results(request, queryset, search_term)
        try:
            search_string = str(search_term)
            users = User.objects.filter(Q(email__icontains=search_string) | Q(phone_number__icontains=search_string))
            user_id_list = [int(user.pk) for user in users]
            queryset |= self.model.objects.filter(user__in=user_id_list)
        except Exception as e:
            pass

Таким образом, эти search_term не будут присутствовать в столбцах моей модели, поэтому мне не понадобится модель столбцы в search_fields.

Но если я установлю свой search_fields = (), тогда оно не будет отображаться в окне поиска на странице списка.

В любом случае я могу добавить поле поиска на страницу со списком без указания каких-либо колонок из модели?

...