0

这是我的控制器:

class HomeController extends BaseController {

public $layout = 'default';

public function index()
{
    $page = Page::find(1);
    $this->layout->page_title = $page->page_title;


    $allPages = Page::lists('title');
    // Give the page it's needed content
    $this->layout->nest('content', 'pages.home', array(
        'pageHeading' => 'Rendered with Mustache.php',
        'pageContent' => $allPages
    ));   
}

}

我有一个名为的主模板default.blade.php和一个名为home.mustashe.

问题是,我想在home.mustache模板中使用包含我所有页面标题的数组。如何将我的数组添加到home.mustache模板中?

现在的代码给了我以下错误:Array to string conversion

我使用的 Mustache 包是:链接到 mustache 包

4

2 回答 2

0

Mustache 包上的文档说数组的处理方式如下:

{{#posts}}
    {{> posts._post}}
{{/posts}}
于 2013-10-16T15:37:56.887 回答
0

该错误意味着,从字面上看,“您正在尝试将数组显示为字符串”......您没有提供足够的上下文进行完全调试,但我猜这意味着您正在设置pageContent为值数组,然后调用{{ pageContent }}模板。

要么自己将数组转换为字符串:

implode(', ',  $allPages)

…或者pageContent在模板内部做一些类似数组的事情:

{{# pageContent }}<li>{{ . }}</li>{{/ pageContent }}
于 2013-10-17T04:11:37.343 回答