Как использовать Django Filter с Arrayfield
Можно ли использовать django-фильтр BaseInFilter с django ArrayField?
Вот пример того, что я пытаюсь сделать;
models.py
class Stays(models.Model):
best_describes_house = ArrayField(
models.CharField(max_length=500, blank=True, null=True),
default=list,
)
filterset.py
class ItemInFilter(filters.BaseInFilter, filters.CharFilter):
pass
class StayFilter(filters.FilterSet):
best_describes_house__in = ItemInFilter(
field_name="best_describes_house", lookup_expr="in"
)
class Meta:
model = Stays
fields = [
"best_describes_house__in",
]
Я пытаюсь сделать запрос к http://127.0.0.1:8000/api/v1/stays/best_describes_house__in=villa,lake. Я продолжаю получать;
оператор не существует: символ varing[] = text[] LINE 1: ...ays" WHERE "lodging_stays". "best_describes_house" IN (ARRAY[....
Я делаю что-то не так?
Я также попробовал сделать это, используя
IntegerField, как указано в этом примере в документации - BaseInFilter, и это работает нормальноВернуться на верх