У меня есть модель Machine
, в которой есть несколько переключателей (много ко многим).
Я делаю фильтр для выборки, когда более одного переключателя 'Вкл'.
queryset.filter(switchs__is_on=True)
не работает.
как я могу это решить ??
class Machine
switchs = models.ManyToManyField(Station)
class Switch(models.Model):
is_on = models.BooleanField()
class MachineFilter(filters.FilterSet):
on_switch = filters.BooleanFilter(method='on_switch_filter')
class MachineFilter(filters.FilterSet):
def on_switch_filter(self, queryset, name, value):
if name == 'on_switch' and value:
return queryset.filter(switchs__is_on=True) // it doesn't work