Laravel-在同一页面上使用不同的范围显示部分

时间:2015-10-10 11:16:07

标签: laravel view scope partial

我在laravel建立我的第一个项目,我有一个索引页面,我想要显示4个不同的列表(它们是相同数据的不同类别,用户将有权查看一个或更多列表)

列表的格式(名称,链接,图像等)是相同的,所以我为它做了一个部分,并认为在这个索引页面上我要检查经过身份验证的用户以及他们是否有权限列表A然后显示它,如果他们有列表B的权限然后显示它,等等。

为了尝试一下,我为第一个类别(在我的控制器中)创建了一个范围,当我将它传递给完全独立的视图时,它显示了正确的数据。但是我不清楚我是如何/每次在索引视图上多次显示部分不同的范围。 有什么方法可以解决这个问题?

我想我会做一些事情,例如一次检查一个权限,只使用该范围的数据创建一个变量,并显示该数据的部分,如:

@include ('partials._items_list') , $category_A)

但是这里的评论表明一个视图一次只有一个数据范围(所以也许我的想法不是一个有效的东西): Laravel - Modify and return variable from @include

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容传递具有相同部分的不同值:

@include ('partials._items_list') , ['categoey_A' => $category_A]);

@include ('partials._items_list') , ['categoey_A' => $category_B]); // <-- Different Value

仅在{{ $categoey_A }}视图中使用partials._items_list,但输出会有所不同。