Php Can';在laravel 5.5的索引页中无法获取foreach

Php Can';在laravel 5.5的索引页中无法获取foreach,php,laravel,Php,Laravel,我无法在laravel 5.5中的indexpage中获取类别名称 这是我的控制器: public function leftmenu() { $categories = Category::orderby('id', 'desc')->take(9)->get(); return view('frontend.slider', compact('categories')); } 我的路线: Route::get('/slider', 'IndexC

我无法在laravel 5.5中的
indexpage
中获取类别名称

这是我的控制器:

public function leftmenu() {
      $categories = Category::orderby('id', 'desc')->take(9)->get();
      return view('frontend.slider', compact('categories'));
    }
我的路线:

Route::get('/slider', 'IndexController@leftmenu');
我的布局:

@include('frontend.slider')
还有我的刀:

@foreach($categories as $category)
<li class="nav-item _icon">
<a href="./collections-all.html">
<img src="{{asset('default/frontend/assets/images/home3_icon_electronics.png')}}" alt="electronics">
<span>{{$category->title}}</span>
</a>
</li>
@endforeach
@foreach($categories作为$category)
  • @endforeach
    以下是我得到的错误:

    未定义变量:类别(视图: C:\laragon\www\xxxxxxxx\resources\views\frontend\slider.blade.php) (观点: C:\laragon\www\xxxxxxxx\resources\views\frontend\slider.blade.php) (观点: C:\laragon\www\xxxxxxxx\resources\views\frontend\slider.blade.php)


    您必须在启动方法的
    app>Providers>composeServiceProvider
    中添加视图生成器添加:

    View::composer('frontend.slider', function ($view) {
        $categories = Category::orderby('id', 'desc')->take(9)->get();
        $view->with('categories', $categories);
    });
    
    为什么?


    因为您在布局中包含了滑块,所以如果您只访问主页,您将看到滑块。这里的问题是,您在访问
    /slider
    时调用
    leftmenu
    ,而不是类别不存在的主页。

    您必须添加视图生成器,在启动方法的
    app>Providers>composeServiceProvider
    中添加:

    View::composer('frontend.slider', function ($view) {
        $categories = Category::orderby('id', 'desc')->take(9)->get();
        $view->with('categories', $categories);
    });
    
    为什么?



    因为您在布局中包含了滑块,所以如果您只访问主页,您将看到滑块。这里的问题是,您在访问
    /slider
    时调用
    leftmenu
    ,而不是类别不存在的主页。

    在刀片文件中回送或打印,并检查是否正在加载视图文件
    @include('frontend.slider')
    @Maraboc在布局文件中也将其移动到了索引中,但结果是相同的。您没有将$categories传递给slider,也没有将$categories作为全局变量传递给slider。这就是为什么它显示未定义的变量。你的slider.blade是否在前端目录中?在你的blade文件中回送或打印,并检查视图文件是否正在加载。你把
    @include('frontend.slider')
    @Maraboc放在布局文件的哪里了?我也把它移到了索引中,但结果是一样的。你没有把$categories传递给slider,Nor$categories是滑块的全局变量。这就是为什么它显示未定义的变量是您的slider.blade在前端目录中?该
    Composer服务提供商在哪里?
    app>Providers>Composer服务提供商中的@mafortis
    @maraboc是否可以在不加载提供商的情况下加载我的类别?因为下一步我需要从不同类别加载我的帖子!滑块将从所有页面查看还是仅从一个页面查看?滑块中需要帖子吗?该
    Composer服务提供商
    在哪里?@mafortis在
    应用程序>提供商>Composer服务提供商
    @maraboc是否可以在不加载提供商的情况下加载我的类别?因为下一步我需要从不同类别加载我的帖子!滑块将从所有页面查看还是仅从一个页面查看?滑块中是否需要立柱?