如何覆盖laravel voyager迁移文件?

问题描述 投票:0回答:1

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

laravel voyager
1个回答
1
投票

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

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

  1. 解决你身边的冲突。这将是更容易和更清洁的方式。
  2. 手动将迁移vendor/tcg/voyager/migrations复制到database/migrations并在php artisan migrate之前使用php artisan voyager:install
  3. 分叉图书馆并进行更改。不是最好的,你将不得不维护你的分叉和你的应用程序。
  4. 手动将迁移vendor/tcg/voyager/migrations复制到database/migrations然后extend/override vendor/tcg/voyager/src/VoyagerServiceProvider.php强制不注册迁移。但我不建议,因为一个小的更新可能会打破你的应用程序。

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

© www.soinside.com 2019 - 2024. All rights reserved.