laravel View :: make传递控制器变量来查看?

时间:2014-06-23 12:05:32

标签: php view laravel controller blade

假设我有简单的页面,通过控制器将文章加载到刀片模板 - &gt; articles.blade.php。在这个模板中,我想添加额外的部分,从类别控制器加载所有类别。我尝试使用<?php echo View::make('category'); ?>命令添加此页面。但我猜它直接加载VIEW文件,而不接触控制器,因此来自控制器的变量不会传递给视图。我得到的错误是:

Method Illuminate\View\View::__toString() must not throw an exception

我想知道我对此是否正确?如果不是,我应该如何向模板添加视图,因此它会加载类别信息。

1 个答案:

答案 0 :(得分:1)

实际上你应该从同一个({可能categories)控制器传递ArticleController,使用类似的东西:

// Probably ArticleController for articles
$articles = Article::all();
$categories = Category::all();
return View::make('articles')
           ->with('articles', $articles)
           ->with('categories', $categories);

如果您从ArticleController传递文章,那么还要加载并传递该控制器中的类别。