Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Вы не вошли.

#1 17.06.2017 16:20:50

Testuser123
Участник с 07.01.2017
Сообщений: 16

Config::set() не заносятся данные

Здравствуйте.

Создал свой конфиг,хочу там хранить мета данные. Отправляю с контроллера, и пытаюсь занести их в конфиг.

PHP
foreach ($request->all() as $name => $value)
    
config('settings.' $name$value);

Но в конфиг данные не заносятся. Нагуглил что если делать это в сервис провайдере в методе бут, то все будит работать. Проверил (хардкод) так и есть.
Вопрос собственно в том, как можно занести данные в конфиг из контроллера?

Не в сети

#2 17.06.2017 17:03:33

constb
Участник с 19.02.2015
Сообщений: 508

Re: Config::set() не заносятся данные

ну вообще-то для изменения содержимого конфига эта функция вызывается иначе – config(['key' => 'new value']), а то что ты делаешь – это получение значения из конфига – config('key', 'default value')

Не в сети

#3 18.06.2017 13:44:14

Testuser123
Участник с 07.01.2017
Сообщений: 16

Re: Config::set() не заносятся данные

constb,
С этим кодом так же не работает. А если его захардкодить в бут метод в аппсервиспровайдер, то все работает...
Как то по другому можно это сделать?

Не в сети

#4 18.06.2017 14:51:15

constb
Участник с 19.02.2015
Сообщений: 508

Re: Config::set() не заносятся данные

ну значит код-то работает. значит данные читаются раньше чем туда заносятся.

вообще я не понимаю что ты пытаешься сделать. перекидывать данные из параметров запроса в конфиг – это какой-то бред, если честно

Не в сети

#5 18.06.2017 17:53:07

Testuser123
Участник с 07.01.2017
Сообщений: 16

Re: Config::set() не заносятся данные

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

Не в сети

#6 18.06.2017 18:23:18

constb
Участник с 19.02.2015
Сообщений: 508

Re: Config::set() не заносятся данные

конфиги для этого точно не подходят. посмотри пакет https://github.com/pascalschwientek/laravel-settings – апи практически такое же, хранится всё в базе, при установке добавляет миграцию для своей таблицы и всё работает как раз так как надо. для пользовательских настроек – идеально

Не в сети

#7 19.06.2017 17:17:03

covobo
Участник с 18.04.2016
Сообщений: 85

Re: Config::set() не заносятся данные

Testuser123 пишет:

}%Здравствуйте.

Создал свой конфиг,хочу там хранить мета данные. Отправляю с контроллера, и пытаюсь занести их в конфиг.
%%(php)
foreach ($request->all() as $name => $value)
    config('settings.' . $name, $value);
%%
Но в конфиг данные не заносятся. Нагуглил что если делать это в сервис провайдере в методе бут, то все будит работать. Проверил (хардкод) так и есть.
Вопрос собственно в том, как можно занести данные в конфиг из контроллера?

foreach ($request->all() as $name => $value) {
    $key = 'settings'.$name;
    config([$key => $value]);
}

Но, как говорят выше - config тебе не подходит, вызов этой функции не будет переопределять твои "физически" файлы конфигурации.

Изменено covobo (19.06.2017 17:17:57)

Не в сети

Подвал раздела