"django.db.utils.OperationalError: no such function: lwgeom_version" Django Version 3.2.16, Spatialite Version 4.2.0 на Windows 10
У меня есть приложение Django, которое использует некоторую географическую информацию. Я установил GDAL и установил Spatialite, скачав двоичные файлы для windows и поместив их в мой каталог python (в моем случае среда conda), как подробно описано в этом посте . Только так я смог заставить его работать без выброса ошибки
Моя база данных установлена в settings.py как
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
'ENGINE': 'django.contrib.gis.db.backends.spatialite',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
Когда я пытаюсь проверить запрос, основанный на географических координатах, например
loc = Point(location['lng'], location['lat'])
radius = D(mi=20)
queryset = BusinessProfile.objects.filter(businessAddress__coordinates__dwithin=(loc, 2.0)) \
.filter(businessAddress__coordinates__distance_lte=(loc, radius)) \
.annotate(distance=Distance("businessAddress__coordinates", loc)) \
.order_by("distance")
Я получаю следующую ошибку:
django.db.utils.OperationalError: no such function: lwgeom_version
Я уже установил GDAL и spatialite, может ли кто-нибудь помочь мне выяснить, в чем может быть проблема?