【问题标题】:In Django , Is it possible to migrate any perticular specific file?在 Django 中,是否可以迁移任何特定的特定文件?
【发布时间】:2020-12-19 06:55:11
【问题描述】:

目前我正在学习 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,它将从该点或文件恢复迁移,但不会针对该特定文件执行迁移。

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

谢谢。

【问题讨论】:

  • 这能回答你的问题吗? Django 1.8 Run a specific migration
  • 你的用例是什么?通常,从堆栈中运行单个迁移会使您的代码和数据库进入不一致的状态。 (如果它有效的话。)
  • 其实我没有用例,只是出于好奇。

标签: python django database migrate


【解决方案1】:

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

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

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

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

【讨论】:

  • 我无法正确理解。如果您能详细解释我,那就太好了。
猜你喜欢
  • 2019-05-14
  • 2018-01-10
  • 2021-03-14
  • 2015-12-08
  • 2021-10-26
  • 2022-09-29
  • 2019-12-05
  • 2021-02-28
  • 1970-01-01
相关资源
最近更新 更多