Laravel по-русски

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

Ты не вошёл. Вход тут.

#1 04.09.2016 18:37:08

Как вывести последние новости в подвале каждой страницы?

Здравствуйте. я новичек в laravel. Есть страница на которой выводятся новости, там все работает.
Пытаюсь вывести новости в футере каждой страницы, скопировал код из view, который выводит записи на странице со списком новости.
Но в результате последние новости в подвале выводятся только на странице со списком новостей, на других страницах в подвале пусто.

Читаю документацию,но нужное найти не могу.
пробовал через include во view вызвать view страницы новостей, но вместе с новостями выводятся дублирующий хедер и футер.

Помогите как организовать вывод последних новостей?

Не в сети

#2 04.09.2016 20:02:44

Re: Как вывести последние новости в подвале каждой страницы?

или вывести блок в виде Виджета?

ищу в поиске виджеты laravel, но информации почти нет.

как все таки вывести блок с новостями в подвале каждой страницы?

Не в сети

#3 04.09.2016 20:57:27

Re: Как вывести последние новости в подвале каждой страницы?

Что бы новости были на всех страницах надо передавать переменную с новостями во все шаблоны smile

https://laravel.ru/docs/v5/views

Не в сети

#4 04.09.2016 22:45:37

Re: Как вывести последние новости в подвале каждой страницы?

DBR пишет:

Что бы новости были на всех страницах надо передавать переменную с новостями во все шаблоны smile

https://laravel.ru/docs/v5/views

Спасибо, добрый человек.

Но никак не могу понять, как передать в переменную массив с записями.

Так работает: view()->share('key', 'value');

Так пробую, но не выводится.
view()->share('news', New::class);

Подскажите как правильно сделать?

или нужно построители представлений использовать?

Не в сети

#5 05.09.2016 09:22:26

Re: Как вывести последние новости в подвале каждой страницы?

view()->share('news', New::class);

Ты так передаешь место где твоя модель лежит. Надо сперва в отдельную переменную получить все новости нужные, а потом уже эту переменную передать глобально в шаблоны.

$news = News::all(); // Все новости тебе не нужны, тут для примера
view()->share('footerNews', $news); // во всех шаблонах у тебя будет доступна переменная $news

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

Не в сети

#6 05.09.2016 22:18:18

Re: Как вывести последние новости в подвале каждой страницы?

DBR пишет:

$news = News::all(); // Все новости тебе не нужны, тут для примера
view()->share('footerNews', $news); // во всех шаблонах у тебя будет доступна переменная $news

Спасибо, то что нужно!

Не в сети

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