Laravel 5.1 - 查看控制器的变量(特别是当前控制器名称)
Laravel 5.1 - View variables(specifically current controller name) for a controller
我想做的是在一个视图中知道我是否在特定的控制器中。据我所知,我有两个选择,但我对其中任何一个都没有答案:-D
在我的 AppServiceProvider
中使用 share
方法注入视图变量,这涉及获取当前控制器名称(或至少是动作名称,以便我可以切换它) 在服务提供商内部。
向控制器中返回的所有视图注入一个变量。例如,控制器是否有引导方法?或者我可以覆盖以下代码片段中的 view()
方法吗?
public function someAction(Request $request)
{
return view('someview', ['myvar' => $myvalue]);
}
当然有一个简单(但并不简单:|)的解决方案:在控制器的所有方法中添加变量。我不喜欢这个。
谢谢
您可以使用控制器的构造函数。
将此添加到控制器的顶部:
public function __construct()
{
view()->share('key', 'value');
}
我想做的是在一个视图中知道我是否在特定的控制器中。据我所知,我有两个选择,但我对其中任何一个都没有答案:-D
在我的
AppServiceProvider
中使用share
方法注入视图变量,这涉及获取当前控制器名称(或至少是动作名称,以便我可以切换它) 在服务提供商内部。向控制器中返回的所有视图注入一个变量。例如,控制器是否有引导方法?或者我可以覆盖以下代码片段中的
view()
方法吗?public function someAction(Request $request) { return view('someview', ['myvar' => $myvalue]); }
当然有一个简单(但并不简单:|)的解决方案:在控制器的所有方法中添加变量。我不喜欢这个。
谢谢
您可以使用控制器的构造函数。
将此添加到控制器的顶部:
public function __construct()
{
view()->share('key', 'value');
}