Saltar al contenido

Django-filter, ¿cómo hacer una búsqueda de múltiples campos? (¡con filtro Django!)

Contamos con el hallazgo a este enigma, al menos eso pensamos. Si presentas dudas déjanoslo saber en un comentario, para nosotros será un placer responderte

Solución:

Probablemente puedas crear un filtro personalizado y hacer algo como esto:

from django.db.models import Q
import django_filters


class LocationFilter(django_filters.FilterSet):
    q = django_filters.CharFilter(method='my_custom_filter')

    class Meta:
        model = Location
        fields = ['q']

    def my_custom_filter(self, queryset, name, value):
        return Location.objects.filter(
            Q(loc__icontains=value) | Q(loc_mansioned__icontains=value) | Q(loc_country__icontains=value) | Q(loc_modern__icontains=value)
        )

Esto filtraría por cualquiera de esos campos. Puedes reemplazar el icontains con lo que quieras

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *