【发布时间】:2015-08-16 19:55:01
【问题描述】:
我有一个应用程序,它有许多视图,需要将一些代码注入视图的特定部分。在之前的应用程序中,我使用根控制器来执行此操作并使用了特殊功能,但是它改变了创建 laravel 应用程序的正常工作流程。
基本上说你有一个创建函数
public function create()
{
return view('something');
}
如果您想向特定部分添加内容,通常您会在视图中执行此操作,并将所需的任何数据添加到视图调用中。我想在控制器中执行此操作,但由于在这种情况下任何返回视图的函数都会显示相同的内容,因此我想稍微简化一下。
我尝试查找,但找不到任何有关控制器功能后处理的信息,有类似的吗?这是一个例子。
public function beforeRender($instance)
{
if ($instance instanceof View)
{
$instance->getFactory()->inject('context-menu', $someData);
}
return $instance;
}
beforeRender 函数将在控制器中的 create 函数之后运行并更改返回,从而允许对任何带有视图的东西进行特殊返回。
所以我的问题是,在 laravel 5(或类似的)中是否有类似的东西,以及我该怎么做。在之前的应用程序中,我重新设计了 laravel 处理控制器的方式,但这次我想避免这样做。
【问题讨论】:
标签: php model-view-controller laravel-5