Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database Django切换到新数据库(本地)_Database_Django_Postgresql - Fatal编程技术网

Database Django切换到新数据库(本地)

Database Django切换到新数据库(本地),database,django,postgresql,Database,Django,Postgresql,哦,我的Django本地测试我正在尝试将默认本地数据库从旧的SQLLite数据库切换到Postgres数据库,以模拟通过heroku托管的实时环境。为此,我在本地使用postgres数据库,并更改了所有settings.py,如下所示,但Django无法识别数据库是否存在。除此之外,如果运行migrate或syncdb,它仍会尝试重新创建旧的sqllite3数据库。有没有人有过从一个数据库到另一个数据库的这种更改的经验,并看到过类似的问题 DATABASES = { 'default'

哦,我的Django本地测试我正在尝试将默认本地数据库从旧的SQLLite数据库切换到Postgres数据库,以模拟通过heroku托管的实时环境。为此,我在本地使用postgres数据库,并更改了所有settings.py,如下所示,但Django无法识别数据库是否存在。除此之外,如果运行migrate或syncdb,它仍会尝试重新创建旧的sqllite3数据库。有没有人有过从一个数据库到另一个数据库的这种更改的经验,并看到过类似的问题

DATABASES = {

    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'postgres',                      
    # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': 'myusername',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '5432',                      # Set to empty string for default.
    }
}

您可能使用了错误的设置文件,或者有类似于local_settings.py的内容覆盖了您的设置,或者设置中有重复的
数据库
条目。执行:

python manage.py diffsettings

您看到正确的
数据库设置了吗?

谢谢您的编辑。仍在学习格式化。我没有,但我不确定这可能来自哪里,因为我没有其他设置文件。这可能与导致问题的git分支有关吗?您的配置中有些地方不正确。在manage.py中,
DJANGO\u SETTINGS\u模块
应包括SETTINGS.py的模块名称,例如
myproj.SETTINGS
。它正确地列在DJANGO\u SETTINGS\u模块下。我完全搞不懂它为什么会保留旧设置。删除所有
.pyc
文件。它们是您的
.py
文件的缓存编译版本。只是尝试了一下,但不幸的是,它们似乎会立即重新创建自己,这并不能解决问题。我有一种感觉,我在做一些非常愚蠢的事情。。。