Laravel: обновите файл.env, опубликовав сторонний пакет
У меня есть библиотека, которую я хочу обернуть в пакет Laravel.
Моя библиотека использует два конфига: публичный config.php
для некоторых нечувствительных настроек и .env
приватный конфиг для конфиденциальных учетных данных.
Я бы хотел vendor:publish
мои конфиги для конечного пользователя. И это кажется хорошим для публики config.php
но как опубликовать мой .env
Laravel-дружественный способ? Я не смог найти способ сделать это vendor:publish
,
1 ответ
Приложения .env
Файл в первую очередь предназначен для хранения конфиденциальной информации в файлах конфигурации и других ресурсах, которые часто используются для контроля версий. Он не предназначен для публикации в любом случае.
Что вы можете сделать, это создать отдельный файл конфигурации с некоторыми заданными разумными настройками по умолчанию, в то же время позволяя пользователю их переопределить. Например:
// my-config.php
return [
'user_model => env('MY_USER_MODEL', App\User::class),
...
];
При необходимости они могут реализовать свою собственную модель User или не указывать ее в своем собственном env-файле и использовать ее по умолчанию.
Этот подход довольно часто встречается в пакетах, предоставляющих роли, разрешения, права аренды и т. Д.