Laravel Как подменить мета-теги в ответе?

Vano

Новичок
У мну есть таблица с мета-тегами, и я хочу если для текущего роута есть теги в БД, подменить ними теги, которые заданы во вьюшках. Как это сделать?
 

Vano

Новичок
Ну я имею ввиду, как подцепится на response body чтоле.
 

Adelf

Administrator
Команда форума
Сделай свой middleware. Можно глобальный. Там анализируй запрос. И записывай куда-нибудь. Да хоть в статический класс. И когда генерируешь вьюшки - у тебя наверняка есть одна, layout которая. Которую ты extend делаешь в каждой. и там мета теги и получи(оттуда куда записал) и напиши. Если что-то непонятно - посмотри сначала в документации ларки.
 

Vano

Новичок
Хочу именно заменять. То-есть во вьюшках все теги остаются, если нету в БД. Если в БД есть тогда заменяются.
 

Вурдалак

Продвинутый новичок
Берешь свой middleware, прописываешь список дефолтных тегов. Если это нужный тебе роут в и БД есть теги, то заменяешь.
 

Adelf

Administrator
Команда форума
@Vano, нет. в каждой вьюшки прописывай теги. И создай класс, который будет рулить этими тегами. и вызывай его и из вьюхи и из мидлвары. И пусть он сам решает какие теги показывать.
 

Vano

Новичок
Берешь свой middleware, прописываешь список дефолтных тегов. Если это нужный тебе роут в и БД есть теги, то заменяешь.
Дело в том что я хочу оставить всё как есть. Допустим много у меня лайаутов с этими мета тегами. Не хочу менять вьюшки. Хочу подменять их)
 

Vano

Новичок
Из того что я нашел это, что у view() обьекта есть renderSections(), в котором я нахожу ['meta-tags']. Вот где бы их мне подменить так чтобы не в контроллерах?)
 

AmdY

Пью пиво
Команда форума
Закладываясь на костыли вроде renderSections можешь после очередного composer update получить неработающий проект. не говоря уже о подзатыльнике, которым тебя отблагодарят при поддержке такого проекта. потрать 5 минут времени и пройдись по лейайтам. Вставив там иф.

Сами же данные можно тащить в view::composer https://laravel.com/docs/5.2/views#view-composers, прописав нужные лэйауты или *.
 

Vano

Новичок
да в компосер шарю. Ну спс раз вы так советуете все, так и сделаю.
 
Сверху