django 迁移 - 重新创建数据库
django migration - re-creating the database
我是 运行ning python 2.7 和 django 1.8。
I have this exact issue.
作为评论发布的答案是:What I did is completely remake the db, erase the migration history and folders.
我很不确定删除和创建数据库。
我正在 运行安装 PostgreSQL 数据库。如果我 drop/delete 数据库然后 运行 迁移,数据库是否会从迁移中重建?我不想删除数据库然后陷入更糟糕的情况。
以下是我为解决此问题所做的工作:
首先把数据做一个脚本,这样当数据库销毁重建的时候,可以很方便的重建数据。
接下来运行以下脚本重置数据库(这将删除所有数据库数据并删除数据库表)。
然后运行以下脚本重新创建数据库:
python manage.py reset_db
然后,运行以下脚本重新创建数据库:
python manage.py migrate
接下来,运行 创建数据库数据的脚本。
最后,运行以下脚本启动服务器:
python manage.py runserver
就是这样。
我希望这对那里的人有所帮助。
事实上没有必要这样做,但为了确保您做对了,请考虑以下事项:
确保您的数据库在迁移过程中未被进程或您的应用程序访问(写入)。我遇到了很多麻烦。
如果您的服务器是 运行,请确保将其关闭。当服务器处于 运行 时,有一些问题会阻止迁移或更新结果,特别是在生产模式下。
如果在开发模式下迁移后在生产中迁移,请确保没有来自开发的文件。它们的名称相似,因此系统会抛出有关迁移已存在的错误。
记住默认值。如果您正在迁移以在预先存在的 table 中包含新列,则必须提供默认值以填充新列中的这些行。
我是 运行ning python 2.7 和 django 1.8。
I have this exact issue.
作为评论发布的答案是:What I did is completely remake the db, erase the migration history and folders.
我很不确定删除和创建数据库。
我正在 运行安装 PostgreSQL 数据库。如果我 drop/delete 数据库然后 运行 迁移,数据库是否会从迁移中重建?我不想删除数据库然后陷入更糟糕的情况。
以下是我为解决此问题所做的工作:
首先把数据做一个脚本,这样当数据库销毁重建的时候,可以很方便的重建数据。
接下来运行以下脚本重置数据库(这将删除所有数据库数据并删除数据库表)。
然后运行以下脚本重新创建数据库:
python manage.py reset_db
然后,运行以下脚本重新创建数据库:
python manage.py migrate
接下来,运行 创建数据库数据的脚本。
最后,运行以下脚本启动服务器:
python manage.py runserver
就是这样。
我希望这对那里的人有所帮助。
事实上没有必要这样做,但为了确保您做对了,请考虑以下事项:
确保您的数据库在迁移过程中未被进程或您的应用程序访问(写入)。我遇到了很多麻烦。
如果您的服务器是 运行,请确保将其关闭。当服务器处于 运行 时,有一些问题会阻止迁移或更新结果,特别是在生产模式下。
如果在开发模式下迁移后在生产中迁移,请确保没有来自开发的文件。它们的名称相似,因此系统会抛出有关迁移已存在的错误。
记住默认值。如果您正在迁移以在预先存在的 table 中包含新列,则必须提供默认值以填充新列中的这些行。