在开发 Laravel 4 应用程序的过程中,我决定开始使用 Laravel 的迁移功能。
问题:我们是否应该编写迁移来创建我们当前在数据库中拥有的所有表?还是我们只为未来的变化编写迁移?
在开发 Laravel 4 应用程序的过程中,我决定开始使用 Laravel 的迁移功能。
问题:我们是否应该编写迁移来创建我们当前在数据库中拥有的所有表?还是我们只为未来的变化编写迁移?
对此没有完全正确的答案。这一切都取决于很多变量,例如您的开发风格、与多少人一起工作以及在什么样的环境中(单个生产数据库?多个开发数据库?),您对迁移的要求是什么等等。 .
如果您决定在此之前为整个数据库编写迁移,您需要确保您的迁移可以处理任何潜在的冲突。Schema::has()
在尝试创建表之前使用等来验证表是否存在,等等。
或者,您可以像 DB 一样编写迁移,并强制任何开发人员在运行迁移之前从空 DB 开始。这有风险,所以要小心。确保您有备份,以防您的迁移忘记了某些内容并且您需要对其进行修改。
所以,TL;DR:在项目的一部分中对整个结构使用迁移一定是一件坏事吗?不,它适合您的应用吗?这完全取决于。