我有很多不同的页面(比如feed,用户e.t.c)。在每个页面上我都有正确的阻止,显示一些默认信息(最新消息,顶级用户和其他一些)。
这个正确的块不依赖于页面的主要内容,但它需要一些逻辑(获取一些最新消息,获取顶级用户和其他)。我不想在控制器的每个动作中编写逻辑来提供数据。我想在任何地方写一次,并且查看需要自己获取它。我怎么能在Laravel 4中做到这一点?
P.S。我的右侧块视图包括来自应用程序主模板的@include语句。
答案 0 :(得分:1)
您正在寻找view composers。它允许您在每次呈现特定视图时执行某些操作。
View::composer('name-of-the-right-block-view', function($view){
// ... fetch information ...
$view->with('news', $news);
$view->with('topUsers', $topUsers);
// etc...
});
你基本上可以把它放在任何地方。一个合适的位置是filters.php
档。