首页 > 解决方案 > 在 Django 中,是否可以迁移任何特定的特定文件?

问题描述

目前我正在学习 django 和学习迁移相关的东西。

我发现我们可以使用迁移特定的应用程序,python manage.py migrate app-name但没有找到如何迁移名为python manage.py migrate 0024_auto_20200827_0706.py.

如果我愿意python manage.py migrate 0024_auto_20200827_0706.py,它将从该点或文件恢复迁移,但不会针对该特定文件进行迁移。

我的问题:如果可以,是否可以迁移特定文件,那怎么可能?

谢谢。

标签: pythondjangodatabasemigrate

解决方案


不可以,不能直接乱序运行单个迁移。

如果迁移是某种数据迁移,否则可能会乱序运行(即它不依赖于架构更改,或者运行起来很危险),我建议将其重构为

  • 例如,“迁移实用程序”功能myapp/migration_utils
  • 仅调用上述函数的迁移本身
  • 调用上述函数的管理命令

然后,您可以在需要时手动调用管理命令,否则迁移将按顺序运行。


推荐阅读