首页 > 解决方案 > 删除旧迁移中使用的过时函数

问题描述

我有一个旧的 Django 项目,该项目维护不善,有很多不再需要的功能。有一个create_account不再需要的函数被调用,但它在旧的迁移文件中使用。

由于修改或删除旧的迁移文件是不好的做法,我想知道如果我要删除该函数的使用然后删除该函数本身会发生什么。它是否会在生产中或当新开发人员加入项目并运行migrate以初始化其数据库时出现问题?

标签: djangodjango-migrations

解决方案


只需将功能移至使用它的迁移即可。

仅当仍然需要旧迁移时,修改旧迁移才是一个问题,也就是说,如果有(非一次性)项目实例仍未迁移,即使这样,也只有在修改影响迁移结果的情况下。就迁移而言,仅将一个功能从一个模块移动到迁移本身就是幂等的——它的工作原理是一样的。


推荐阅读