小胡子模板中的拉拉维尔阵列


Laravel array in mustache template

这是我的控制器:

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

我使用的胡子包是:链接到胡子包

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

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

implode(', ',  $allPages)

。或者对模板中的pageContent做一些类似数组的事情:

{{# pageContent }}<li>{{ . }}</li>{{/ pageContent }}

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

{{#posts}}
    {{> posts._post}}
{{/posts}}