Laravel 迁移 - 永远保留它们?啥是最佳实践?
Posted
技术标签:
【中文标题】Laravel 迁移 - 永远保留它们?啥是最佳实践?【英文标题】:Laravel Migrations - keep them forever? What is best practice?Laravel 迁移 - 永远保留它们?什么是最佳实践? 【发布时间】:2015-04-25 03:05:58 【问题描述】:我已经与 Laravel 合作了大约几个月 - 喜欢它。对建议用于管理数据库更改的工作流有疑问。
我有一个 test 数据库,用于开发我的应用程序,当我相当高兴时,我通过复制 phpMyAdmin 中的结构创建了一个 production 数据库。我在 phpMyAdmin 上构建了初始数据库,因为我不熟悉 Laravel 迁移。
现在我可以更好地了解 Laravel Migrations 的强大功能,并希望使用它们来更新 test 数据库并将这些更改转移到 production。
我的行动方案是什么?我可以删除 app/database/migrations 目录中的所有内容并从头开始吗?在我的 test 和 production 环境中调用 php artisan migrate 是否会出现问题?
提前感谢您的回复!
【问题讨论】:
【参考方案1】:简短的回答:没有问题。如果您只是在 up() 和 down() 方法中添加/更改/删除表/列。
更长的答案:仍然没有问题。只要您不删除不是在 up() 方法中创建的表。
但是,假设您要与另一位开发人员合作,该开发人员也想在本地数据库上进行开发。但是您没有针对它的迁移 - 因此新开发人员需要从测试数据库运行初始结构,然后应用新迁移。
在这种情况下,我将从 1 个大型迁移开始,您在其中创建所有初始表,并在 down() 中删除这些表,因此新开发人员可以运行迁移并开始编码。
编辑:在迁移初始结构之后,只需在开发时添加新结构;)
【讨论】:
以上是关于Laravel 迁移 - 永远保留它们?啥是最佳实践?的主要内容,如果未能解决你的问题,请参考以下文章