class filter(filters.FilterSet):
filename = django_filters.CharFilter(name='filename', lookup_expr='contains')
state = django_filters.filters.ModelMultipleChoiceFilter(
name='state_id',
to_field_name ='state' ,
queryset=models.IngestionState.objects.all())
http: // localhost : 8000 / ingestion-detail /? filename = "{something}" & status =
Приведенный выше URL дает пустой результат.
Только когда status = {something}, мы получаем требуемый результат. Это случай, специфичный только для ModelMultipleChoiceFilter.
Что ж, трудно помочь в том, что ты сказал.
'status' != 'state'
но я предполагаю, что это опечатка.
Попробуйте from django_filters.constants import STRICTNESS
и установите для мета-параметра strict
значение STRICTNESS.RAISE_VALIDATION_ERROR
. По крайней мере, это должно вам кое-что сказать.
В противном случае мне нужно, чтобы вы попытались определить что-то более конкретное, прежде чем я смогу рассматривать это как проблему. Возможно, вам больше подойдет StackOverflow, если вам просто нужна помощь.
ПРИВЕТ У меня была та же проблема, в этой ситуации, как исправить пустой результат, если мой URL-адрес имел статус = пусто, если мне нужен статус во всех возможных?
from django_filters.constants import STRICTNESS
это показывает мне ошибку под названием ImportError: cannot import name 'STRICTNESS'
Самый полезный комментарий
from django_filters.constants import STRICTNESS
это показывает мне ошибку под названиемImportError: cannot import name 'STRICTNESS'