【问题标题】:How to make main menu public in all controllers如何在所有控制器中公开主菜单
【发布时间】:2021-05-19 15:18:25
【问题描述】:

我在控制器中有这段代码

$Headercategory=Categories::where('status','1')->orderby('order')->get();
return view('front.home',['Headercategory'=>$Headercategory]

我所有的控制器都将包含“Headercategory”,这意味着我必须对我拥有的所有控制器执行相同的代码。

有没有办法在所有项目中公开此代码?无需在所有控制器中添加它

【问题讨论】:

  • 您需要范围 docs。这里有一些例子link1link2link3
  • 这是呈现菜单的特定视图吗?如果是这样,您可以使用视图编辑器为该特定视图传递该数据......如果不是,您可以使用视图共享

标签: laravel controller


【解决方案1】:

据我了解,您想在所有刀片文件中传递类别变量。您可以通过 /app/Providers/AppServiceProvider.php 在引导方法中轻松做到这一点:

use View;

public function boot()
{
     $Headercategory = Categories::where('status','1')->orderby('order')->get();

     View::share(['Headercategory' => $Headercategory);
}

现在您可以从刀片的任何位置访问$Headercategory

【讨论】:

    猜你喜欢
    • 2019-10-30
    • 2020-10-26
    • 2015-06-12
    • 1970-01-01
    • 1970-01-01
    • 2019-03-16
    • 2016-11-22
    • 1970-01-01
    • 2014-01-11
    相关资源
    最近更新 更多