我有许多不同的页面(如feed,users等)。在每个页面上,我都有正确的块,显示一些默认信息(最新消息,顶级用户和其他一些信息)。
这个正确的块不依赖于页面的主要内容,但它需要一些逻辑(获取一些最新消息,获取顶级用户等)。我不想在控制器的每个操作中编写逻辑来提供数据。我想在任何地方写一次,视图需要自己获取它。如何在拉拉维尔 4 中做到这一点?
附言我的右块视图,包括应用程序主模板中的@include语句。
您正在寻找视图作曲家。它允许您在每次呈现特定视图时执行某些操作。
View::composer('name-of-the-right-block-view', function($view){
// ... fetch information ...
$view->with('news', $news);
$view->with('topUsers', $topUsers);
// etc...
});
你基本上可以把它放在任何地方。适当的位置是filters.php
文件。