Sqlite表数据未加载到Heroku上的Postgresql数据库中[重复]

epggiuax  于 2022-11-13  发布在  SQLite
关注(0)|答案(1)|浏览(152)

此问题在此处已有答案

Django: What are the best practices to migrate a project from sqlite to PostgreSQL(7个答案)
Providing initial data for models - Django(1个答案)
14天前关闭。
此帖子已在14天前编辑并提交审核,未能重新打开:
原始关闭原因未解决
我在本地开发了一个Django项目,并使用SQLITE作为数据库。现在我已经将该项目部署到Heroku网站,并使用Postgresql作为数据库。数据库模式已经很好地迁移,但表中的数据还没有迁移。
我的问题是什么?
这是我的数据库代码从设置文件。

DATABASES = {
        'default': {
            "ENGINE": "django.db.backends.sqlite3",
            "NAME": os.path.join(BASE_DIR, "db.sqlite3"),
        }
    }

    import dj_database_url
    db_from_env = dj_database_url.config(conn_max_age=600)
    DATABASES['default'].update(db_from_env)
nkkqxpd9

nkkqxpd91#

在生产环境中,只能在数据库中使用引擎名称
在settings.py文件中:

"ENGINE": "django.db.backends.postgresql_psycopg2"

将数据从本地传输到生产环境。

数据传输

安装Heroku PGBackups附加模块:

heroku addons:add pgbackups

转储本地数据库:

pg_dump -h localhost  -Fc library  > db.dump

为了让Heroku访问数据库转储,您需要将其上传到Internet的某个地方。
将转储导入Heroku:

heroku pgbackups:restore DATABASE http://www.example.com/db.dump

相关问题