laravel вывод товаров

107
13 сентября 2019, 22:10

Нужно вывести на страницу, записи из бд, а именно боковое меню и список товаров. Меню выводится, а список товаров нет. Если убрать меню то список товаров выводится. Вообщем вместе не выводятся данные из бд. Возможно я не так понял как взаимодействуют между собой контроллеры и роуты. Очень буду благодарен за хороший ответ. Код ниже:

          //Роуты//
    Route::get('/', 'SiteController@index');
    Route::get('/', 'SiteController@tovar');
    Route::get('/', 'SiteController@menu');
    Route::get('/contacts', 'SiteController@contacts');
    Route::get('/category/{id}', 'SiteController@category');

    //контроллеры//
   <?php
    namespace App\Http\Controllers;
    use App\Menu;
    use App\Tovar;
    use Illuminate\Http\Request;
    class SiteController extends Controller
    {
     public function index()
    {
     return view('index');
    }
     public function category()
   {
      return view('category');
    }
     public function contacts()
    {
     return view('contacts');
    }
     public function menu()
    {
     $menus = Menu::all();
     return view('index', compact('menus'));
    }
     public function tovar()
    {
     $tovars = Tovar::all();
     return view('index', compact('tovars'));
    }
   }
 // боковое меню
 <div class="content__left">
    <a href="" class="content__left-title">Каталог товаров</a>
    @foreach ($menus as $menu)
    <ul class="left__menu">
        <li class="left__menu-item"><a href="{{url("public/$menu->url")}}">{{ $menu->title }}</a></li>
    </ul>@endforeach
</div>
  // файл index.blade.php  -  вывод товаров 
                 <div class="content__right-hit">
            <h3 class="content__right-title">Хиты перодаж</h3>
            @foreach ($tovars as $tovar)
            <div class="products">
                <div class="products__item">
                    <img src="images/westa.jpeg" class="products__item-img">
                    <h3 class="products__item-title">Аккумулятор Westa 60</h3>
                    <div class="products__item-price">
                        <span class="price">4999 Р</span>
                        <a class="addCart">В корзину</a>
                    </div>
                    <div class="hr">
                        <a class="addCompare">Сравнить</a>
                        <span class="">В наличии</span>
                    </div>
                </div>
                <div class="products__item">
                    <img src="images/westa.jpeg" class="products__item-img">
                    <h3 class="products__item-title">Аккумулятор Westa 60</h3>
                    <div class="products__item-price">
                        <span class="price">4999 Р</span>
                        <a class="addCart">В корзину</a>
                    </div>
                    <div class="hr">
                        <a class="addCompare">Сравнить</a>
                        <span class="">В наличии</span>
                    </div>
                </div>
                <div class="products__item">
                    <img src="images/westa.jpeg" class="products__item-img">
                    <h3 class="products__item-title">Аккумулятор Westa 60</h3>
                    <div class="products__item-price">
                        <span class="price">4999 Р</span>
                        <a class="addCart">В корзину</a>
                    </div>
                    <div class="hr">
                        <a class="addCompare">Сравнить</a>
                        <span class="">В наличии</span>
                    </div>
                </div>
                <div class="products__item">
                    <img src="images/westa.jpeg" class="products__item-img">
                    <h3 class="products__item-title">Аккумулятор Westa 60</h3>
                    <div class="products__item-price">
                        <span class="price">4999 Р</span>
                        <a class="addCart">В корзину</a>
                    </div>
                    <div class="hr">
                        <a class="addCompare">Сравнить</a>
                        <span class="">В наличии</span>
                    </div>
                </div>
                <div class="products__item">
                    <img src="images/westa.jpeg" class="products__item-img">
                    <h3 class="products__item-title">Аккумулятор Westa 60</h3>
                    <div class="products__item-price">
                        <span class="price">4999 Р</span>
                        <a class="addCart">В корзину</a>
                    </div>
                    <div class="hr">
                        <a class="addCompare">Сравнить</a>
                        <span class="">В наличии</span>
                    </div>
                </div>
            </div>@endforeach
        </div>
Answer 1

Запомните раз и навсегда - для роута существует только один экшен:

Route::get('/', 'SiteController@index');

В экшене index собираете все нужные для страницы данные и отдаете в шаблон:

public function index()
{
    return view(
         'index',
         [
             'menus' => Menu::all(),
             'tovars' => Tovar::all(),
         ]
    );
}
READ ALSO
Авторизация через токены Retofit

Авторизация через токены Retofit

Пытаюсь реализовать авторизацию в своем приложенииПри первом запуске приложения, пользователь вводит свои данные(логин и пароль)

125
В чем разница между salt и initialization vector (iv) при шифровании данных?

В чем разница между salt и initialization vector (iv) при шифровании данных?

На русском информации практически нет, а с английским у меня не очень хорошоПодскажите, пожалуйста, в чем разница между этими двумя понятиями

161
Сравнивание 2х массивов из 10 000 000

Сравнивание 2х массивов из 10 000 000

пишу на php, и есть реальная задача сравнения 2х огромных массивов данныхНо загвостка в том, что эти массивы разбиты по файлам

120
Создание плагина wordpress

Создание плагина wordpress

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

124