Search code examples
djangojquery-select2django-filter

Django-Filter: multiple select2 choices on a foreign-key field


I'm having a multiple select 2 like this:

1

The filter needs to return all the Route Template that matches the mentioned select 2


Solution

  • SOLUTION:

    Model:

    from django.db import models
    class Route(models.Model):
        route_template = models.ForeignKey(RouteTemplate, blank=True, null=True, on_delete=models.CASCADE)
    

    Filter:

    import django_filters
    
    class RouteFilter(django_filters.FilterSet):
        route_template = django_filters.AllValuesMultipleFilter(field_name='route_template__name')
    

    I've struggled a lot with MutlipleChoice, overriding method, etc. and the solution is AllValuesMultipleFilter