ApartmentFilterSet разрешил поле 'geom' с 'точным' поиском для нераспознанного поля типа PointField
У меня есть файл filters.py, который использует приложение django-filter. Но когда я пытаюсь отфильтровать квартиры по пригородам, он выбрасывает исключение ApartmentFilterSet resolved field 'geom' with 'exact' lookup to an unrecognized field type PointField. Я использовал переопределение filterset, эта ошибка не проходит.
import django_filters
from django.contrib.gis.db import models as geo_models
from .models import Apartment
class ApartmentFilter(django_filters.FilterSet):
ADKT = 'Addis Ketema'
AKLT = 'Akaki-Kality'
ARDA = 'Arada'
BOLE = 'Bole'
GLLE = 'Gulele'
KLFE = 'Kolfe-Keranio'
KIRK = 'Kirkos'
LDTA = 'Lideta'
YEKA = 'Yeka'
NFSL = 'Nefas Silk-Lafto'
SUBCITY_CHOICES = [
(ADKT, 'Addis Ketema'),
(AKLT, 'Akaki-Kality'),
(ARDA, 'Arada'),
(BOLE, 'Bole'),
(GLLE, 'Gulele'),
(KLFE, 'Kolfe-Keranio'),
(KIRK, 'Kirkos'),
(LDTA, 'Lideta'),
(NFSL, 'Nefas Silk-Lafto'),
(YEKA, 'Yeka')]
class Meta:
model = Apartment
fields = ['apt_subcity', 'apt_cost','geom']
filter_overrides = {
geo_models.PointField: {
'filter_class': django_filters.CharFilter,
'extra': lambda f: {
'lookup_expr': 'exact',
},
}
}
ordering = django_filters.ChoiceFilter(label='Ordering',subcity_choices=SUBCITY_CHOICES, method='filter_by_ordering')