Расширение Heroku Django post-gis: Ошибка "нет атрибута 'geo_db_type'" при миграции новой модели, содержащей геоэлементы

Я столкнулся с этой проблемой при развертывании моего приложения django на heroku. Оно прекрасно собиралось и разворачивалось до того, как я отредактировал свою django модель, включив в нее поле геометрии:

geom = models.PointField(verbose_name='geo',srid = 4326)

Теперь сборка проходит успешно, но затем происходит сбой на этом коде миграции в Procfile

`release: python manage.py migrate`

Файл миграции успешно находится в моей git-репо. И локально я смог успешно запустить python manage.py migrate. Когда я перехожу к миграции на heroku, я получаю следующую ошибку.

AttributeError: 'DatabaseOperations' object has no attribute 'geo_db_type'

Похоже, что здесь не хватает чего-то "связанного с гео", но я не могу понять чего, поскольку я создал расширение postgis для базы данных postgres в heroku и у меня есть heroku-geo-buildpack вместе с heroku/python buildpack.

На heroku у меня python 3.10, а локально это Python 3.9.13.

В моем файле settings.py у меня есть:

'ENGINE':'django.contrib.gis.db.backends.postgis', в DATABASES

и 'django.contrib.gis', в INSTALLED_APPS

Вот расширение post-gis на базе данных postgres в heroku:

Here's the post-gis extension on the heroku postgres database

И два билдпака, установленных в heroku: And the two buildpacks set in heroku

Спасибо за любую помощь или руководство!

Хорошо - оказалось, что у меня была закомментирована важная пара строк в файле settings.py. Размещаю ответ здесь, вдруг это кому-нибудь поможет! Насколько я понимаю, эта часть помогает убедиться, что движок postgis используется на сервере heroku. Но, пожалуйста, если кто-то знает больше о том, почему это помогло решить мою проблему, прокомментируйте и напишите, я весь внимание! Спасибо!

import dj_database_url
DATABASES['default'] = dj_database_url.config()
DATABASES['default']['ENGINE'] = 
'django.contrib.gis.db.backends.postgis'
DATABASES['default']['NAME'] = os.environ['NAME']
Вернуться на верх