Обновление конфигурации Laravel

#laravel #laravel-5

#laravel #laravel-5

Вопрос:

Я работаю над Laravel. У меня есть вопросы о динамическом обновлении / добавлении конфигурации. Позвольте мне ответить на мой вопрос.

Я обновляю / добавляю глобальную конфигурацию своего проекта, используя file_put_content в файле конфигурации. У меня есть другой способ, сохранить конфигурацию в базе данных и извлечь эту конфигурацию во время входа в систему.

Какой способ лучше использовать и почему?

Комментарии:

1. Не храните настройки conf внутри файла conf …. должны быть только «настройки по умолчанию», а все пользовательские настройки должны быть внутри файла .env. Затем вы можете сохранить файл .env в БД

Ответ №1:

один из способов — сохранить отдельную таблицу для конфигурационных данных, если ваши данные статичны, значит, в этих данных ничего не нужно менять. а затем создайте provider , чтобы получить ваши данные и связать эти данные во время выполнения

 public function boot()
    {
        if (Schema::hasTable('roles')) {
            $roles = Role::pluck('name', 'id')->all();
            $data = collect($roles)->mapWithKeys(function ($item, $index) {
                return [str_slug($item, '_') => $index];
            })->all();
            config(['configfilename.configkey' => $data]);
        }
    }
  

Таким образом, вы можете получить свои конфигурационные данные во время выполнения