我切换到我的数据库引擎到PostGIS,现在我切换回PostgreSQL(所以我可以继续免费使用Heroku)。我将settings.py文件更改回:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'chishenma',
'HOST': 'localhost',
}
}
并注释掉已安装的应用,现在它显示:
# 'django.contrib.gis',
首先,我确保Postgres.app正在运行。然后我删除了我的迁移,运行了python manage.py syncdb,并再次进行了南迁移,所有这些都没有错误。当我进入psql shell并输入\ l时,我可以在列表中看到我的数据库“chishenma”:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-------------------------+-----------------+----------+-------------+-------------+----------------------
chishenma | michelleglauser | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
然而,当我输入\ d时,我得到“找不到关系”。我试图重新创建数据库,但我得到“错误:数据库chishenma已经存在。”
我查看了this和this Stack Overflow线程并确定我的访问权限(我有“= UC / postgres”部分)和search_path是正确的。我明白了:
List of schemas
Name | Owner | Access privileges | Description
--------+-----------------+------------------------------------+------------------------
public | michelleglauser | michelleglauser=UC/michelleglauser+| standard public schema
| | =UC/michelleglauser
和
List of roles
Role name | Attributes | Member of
-----------------+------------------------------------------------+-----------
michelleglauser | Superuser, Create role, Create DB, Replication | {}
我错过了什么?如何使关系可以找到?