【问题标题】:How do I override laravel voyager migration files?如何覆盖 laravel voyager 迁移文件?
【发布时间】:2019-07-26 03:34:47
【问题描述】:

目前我在我的一个 laravel 项目中使用 laravel voyager 我的问题是 voyager 带有一些开箱即用的迁移文件,这些迁移文件有时会导致与我自己的迁移文件发生冲突,尤其是创建用户表的迁移文件,所以如何是不是我可以修改 voyager 迁移文件检查文档只告诉我如何覆盖视图和控制器,但对迁移文件一无所知。有些人可以提供完成此任务所需的步骤吗?

【问题讨论】:

    标签: laravel voyager


    【解决方案1】:

    您可以使用artisan vendor:publish 发布它们,然后删除/修改您需要的。

    但是,有时这些库不允许您发布它们的所有文件。我安装了一个快速项目,voyager 似乎就是这种情况。显然,您只能发布虚拟迁移。在那种情况下,我只能看到 3 种可能的方式:

    1. 解决您这边的冲突。这将是更简单、更清洁的方式。
    2. 手动将迁移vendor/tcg/voyager/migrations 复制到database/migrations 并使用php artisan migrate 之前 php artisan voyager:install
    3. fork 库并进行更改。不是最好的,你必须维护你的 fork 和你的应用程序。
    4. 手动将迁移 vendor/tcg/voyager/migrations 复制到 database/migrations 然后 extend/override vendor/tcg/voyager/src/VoyagerServiceProvider.php 强制不注册迁移。但我不建议这样做,因为小更新可能会破坏您的应用。

    附加警告,第 2 3 和第 4 点:如果您确实进行了更改,例如Voyager 列名,库可能会使用库中的列名,您可能会遇到一些其他问题。我相信你应该调整你的迁移和你的代码库。

    【讨论】:

    • 它说发布完成,但我在哪里可以找到要编辑的迁移文件?
    • 我明白你的意思,如果我只是调整迁移文件夹中的迁移文件,我会尝试你提供的第一种方法。
    猜你喜欢
    • 2020-12-12
    • 2019-09-13
    • 2017-08-01
    • 2017-11-18
    • 2018-10-26
    • 2017-05-17
    • 2018-05-07
    • 2019-05-19
    • 1970-01-01
    相关资源
    最近更新 更多