【问题标题】:How to load data in pre-controller and pass directly to view in Laravel 5?如何在预控制器中加载数据并直接传递给 Laravel 5 中的视图?
【发布时间】:2016-04-07 05:33:09
【问题描述】:

我正在开发一个 Laravel 5 项目。那是一个电子商务项目。我想为每个请求加载所有类别。因为那是在导航栏中使用的。在我使用 Codeigniter 框架之前。在 CodeIgniter 中,我确实喜欢这样做。我创建了一个名为“MainController”的控制器类,它扩展了 CI_Controller。

所以课程详情如下:

class MainController extends CI_Controller{

public $data;

function __construct()
{
    $this->data["categories"] = getCategries();
}

}

然后每个控制器都扩展 MainController 并像这样将数据传递给视图。

class Home extends MainContoller{

 function index(){
  $this->load->view('view',$this->data);
 }

}

我在 Laravel 中尝试过类似的方法。但是当它到达子控制器时,数据属性值不包括在内。所以我尝试使用中间件。然后尝试将数据与请求一起传递给控制器​​。但是控制器仍然必须做这样的事情

   $data['categories'] = $request->categories;

我需要在每一个动作中都这样做。我不喜欢它。我怎样才能像在 CodeIgniter 中那样实现它?我目前正在使用 Laravel 5.1。

【问题讨论】:

    标签: php codeigniter laravel-5.1


    【解决方案1】:

    您可以使用view composer。

    如果您不熟悉此类概念,我建议您阅读整个链接教程页面。

    【讨论】:

      猜你喜欢
      • 2020-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-20
      相关资源
      最近更新 更多