簡體   English   中英

Laravel:在發布之前永久覆蓋來自 Laravel Package 的依賴項配置

[英]Laravel: Permanently override config of dependencies from a Laravel Package before publishing them

我正在開發一個安裝依賴項列表的 Laravel Package。 依賴項有自己的配置文件,安裝后要發布。

我們需要的是在發布它們之前/之后通過我們的 package 自動(避免手動)修改這些依賴項的配置文件並將它們放在app/config中。

我找到了一些解決方案,例如在 Package 的服務提供者的注冊方法中使用mergeConfigFrom() 但它不會修改文件內容本身,只是加載合並的配置。 我們需要通過我們開發的 package 修改配置文件的內容,這樣我們就不需要在安裝 package 后手動更改配置文件。

例如,我們安裝Laravel Horizon作為 package 的依賴項。 Horizon 在app/config中發布了一個名為horizon.php的配置文件。 我們需要在發布該配置文件之前或之后自動修改app/config/horizon.php的一些值。

任何幫助都感激不盡。 謝謝:)

目前這是不可能的。 查看 laravel 框架源代碼中的Illuminate\Foundation\Console\VendorPublishCommand

  1. go 的最佳方法是通過在同一文件上發布 package 中的 Horizo horizon.php配置來完全替換它。
  2. 或者,您可以編寫自定義命令將這些數據注入horizon.php
  3. 您可以在 laravel 框架中進行 PR 以允許您這樣做。 並希望他們接受你的 PR。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM