2015-07-06 2 views
0

Я хочу сохранить глобальные настройки в базе данных, которые затем будут доступны из cPanel. У меня есть модель Setting, который имеет только один элемент с несколькими столбцами, таких как siteName, language, siteDescription и т.д. Я хочу, чтобы сделать их доступными в каждом виде, так что мне нужно сделатьРедактируемые настройки глобального сайта в Laravel

$settings = \MyApp\Setting::find(1);

для каждый отдельный контроллер? Есть ли способ определить эту переменную где-то глобально и сделать ее доступной в каждом отдельном контроллере/представлении?

Возможно, это неправильный способ сделать это?

+0

Nevermind, я нашел ответ здесь: http://stackoverflow.com/questions/25189427/global-variable-for-all-controller-and-views –

+0

Вы можете добавить 'вид() -> доля ('settings', $ settings); 'на ваш базовый контроллер или поставщик услуг, но, поскольку я уверен, что вам не нужны настройки в каждом отдельном представлении, я думаю, что лучшим подходом было бы использование подстановочного вида композитора http: // laravel.com/docs/5.1/views#view-composers. –

ответ

0

Может быть, лучше написать этот фрагмент кода в BaseController.

или

Создать черту и писать в него. используйте эту черту в любом месте.

+0

Да, возможно, это то, что я буду делать. Или используйте функцию share() из ServiceProvider. –

Смежные вопросы