传输数据 | Django Heroku
Posted
技术标签:
【中文标题】传输数据 | Django Heroku【英文标题】:Transfer data | Django Heroku 【发布时间】:2020-11-14 05:00:27 【问题描述】:对于部署在 Heroku 中的 Django 应用,如何将数据从本地数据库传输到生产数据库。
我刚刚部署了我的项目,但是在迁移之后,模型是空的。
【问题讨论】:
【参考方案1】:您可以生成本地数据库表的固定装置,然后将它们加载到生产数据库中。
您可以使用 django 命令完成这一切:dumpdata 和 loaddata。
您可以在此处阅读有关如何操作的文档:
https://docs.djangoproject.com/en/3.0/howto/initial-data/#providing-data-with-fixtures
【讨论】:
【参考方案2】:您可以查看fixtures。有了它,您可以加载和转储数据 从数据库到称为固定装置的文件。 Django 支持 JSON、XML 或 YAML 格式的夹具。
这是json
格式的示例。假设您的 Django 项目中有一个 app
名称 courses
。然后在courses
应用程序中创建一个fixtures
文件夹。之后可以在courses/fixtures/
中使用以下命令转储数据。
python manage.py dumpdata courses --indent=2 --output=courses/fixtures/
file_name.json
然后您可以使用loaddata
将数据加载回数据库。
python manage.py loaddata file_name.json
为了简单的测试,您还可以使用以下命令将数据转储到terminal
。
python manage.py dumpdata courses --indent=2
【讨论】:
以上是关于传输数据 | Django Heroku的主要内容,如果未能解决你的问题,请参考以下文章
数据库更改时,Heroku 部署的 Django 网页不会更新
如何在 Heroku 上为 Django 应用程序设置数据库?