我已经将我的应用托管在heroku上,它有两个包含1000行的表,但是运行了代码:
heroku run python manage.py makemigrations
heroku run python manage.py migrate
仅迁移表,而不迁移内容。如何迁移表格内容?
谢谢
答案 0 :(得分:0)
命令makemigrations
和migrate
是用于处理数据库方案的命令,而不是数据库中的实际数据。
您应该将迁移视为数据库架构的版本控制系统。 makemigrations
负责将模型更改打包到单个迁移文件中(类似于提交),migrate
负责将这些更改应用于数据库。
简而言之,运行这两个命令只会创建django应用程序所需的表。数据必须手动填充或从开发环境中导出并导入到heroku应用中。我建议您在发布更多问题之前先阅读有关django的更多信息。
答案 1 :(得分:0)
您应该使用django.db.migrations.operations
中的RunPython手动创建自定义迁移文件(请参见examples here)。您可以对数据进行任何必要的更改,以将数据从当前状态更新为必填。
提交后,推送至Heroku并运行heroku run python manage.py migrate
。这应该在远程数据库上执行迁移。