1

当我在前端站点中传递一个变量时,它显示该变量是undefined:为什么会发生这种情况?我也尝试过使用紧凑型,但它对我不起作用。有没有办法解决这个问题?

HomeController文件代码:

public function index()
    {
        $category =DB::table('categories')->where('status', 1)->get();
        $brand =DB::table('brands')->where('status', 1)->get();
        $home=view('home.main_content');
        return view('home')->with('home', $home)->with('category', $category);
    }

使用foreach循环的前端代码:

@foreach($category as $result)
    <div class="panel panel-default">
    <div class="panel-heading">
    <h4 class="panel-title"><a href="#">{{$result->name}}</a></h4>
    </div>
    </div>
@endforeach

错误:

Undefined variable: category (View: C:\xampp\htdocs\laravelblog\resources\views\home\sidebar_left.blade.php)
4

1 回答 1

0

您的视图被调用home,您尝试在其中使用该变量的视图被调用sidebar_left

因此,如果您使用刀片@include指令加载该视图,则需要将变量传递给该视图。你可以这样做:

@include('sidebar_left', ['category' => $category])

然后你就可以使用它了。

于 2018-12-23T20:06:40.553 回答