【发布时间】:2021-08-16 02:28:15
【问题描述】:
stackoverflow 上有一个非常老的线程Getting 'DatabaseOperations' object has no attribute 'geo_db_type' error when doing a syncdb
但我对他们的问题的不同之处在于我的容器安装了 POSTGIS 和 POSTGRES。具体来说,我使用了 QGIS,图像就是这样
db:
image: kartoza/postgis:13.0
volumes:
- postgis-data:/var/lib/postgresql
所以在本地我有两个 docker 图像 - 一个是 web,另一个是 kartoza/postgis
我在 settings.py 文件中也有这个
import dj_database_url
db_from_env = dj_database_url.config(conn_max_age=500)
DATABASES['default'].update(db_from_env)
应该支持 GIS 数据。我看到我所有的包 gis、地理定位包都安装了,没有问题。但是当我运行 heroku run python manage.py migrate 时出现上述错误
该网站的运行功能非常有限,因为需要地理变量才能让您通过着陆页。
我采取的部署步骤是
heroku create appname
heroku stack:set container -a appname
heroku addons:create heroku-postgresql:hobby-dev -a appname
heroku git:remote -a appname
git push heroku main
EDIT heroku 上的 db url 是 postgres://foobar:3242q34rq2rq32rf3q2rfq2q2r3vq23rvq23vr@er3-13-234-91-69.compute-
我还运行了以下命令,它显示数据库现在需要 GIS,但我仍然收到错误
$ heroku pg:psql
create extension postgis;
【问题讨论】: