【发布时间】:2019-12-16 09:49:41
【问题描述】:
我正在尝试创建一个管理命令,该命令将创建两个迁移,一个用于添加模型、字段等,另一个用于删除,以便我可以在部署应用程序之前应用其中一个迁移,另一个在部署后应用已在所有服务器上。
有没有什么简单的方法可以在没有人工干预的情况下实现这一点?
【问题讨论】:
-
您可以
makemigrations创建一个文件,然后根据需要自定义它...!?或者完全手工制作一个新的迁移文件。 -
我正在尝试自动化这个过程。
-
我有个奇怪的想法,这可能不是正确的方法。编写一个自定义的
django-admin命令,该命令将调用一个最终引用 shell 脚本的函数,该函数将执行从应用程序中删除当前迁移文件然后进行迁移的操作。要编写管理命令,请遵循:docs.djangoproject.com/en/3.0/howto/custom-management-commands 对于删除迁移:find . -path "*/migrations/*.py" -not -name "__init__.py" -deletefind . -path "*/migrations/*.pyc" -delete