2012-08-24 199 views
-1

我有一个总体布局。 (default) 但对于用户页面,我应该为每个页面添加一个面板。布局布局

我试过$this->renderLayout('panel_code', 'default');,但没有工作;并打印默认布局视图view内容!没有panel_code

我的错误在哪里?

+0

没有'elements'就不可能?为此范围正确创建了 – mrdaliri

+0

元素。 – 2012-08-24 12:26:00

回答

1

您应该使用.ctp扩展名在View/Elements文件夹中创建元素。

This link可以帮助您清晰地将视图文件与相关/重复的代码分开。

元素基本上是一个迷你视图,可以包含在其他视图中,布局中甚至其他元素中。可以使用元素使视图更具可读性,将重复元素的呈现放置在其自己的文件中。他们还可以帮助您在应用程序中重新使用内容片段。

元素存在于/ app/View/Elements /文件夹中,并具有.ctp文件扩展名。它们使用视图的元素方法输出:

<?php echo $this->element('helpbox'); //without extension ?> 

您可以将视图中的变量传递给元素。

在你看来:

<?php echo $this->Element('reviews/view-goal', array('history' => $history)); 

鉴于-goal.ctp元素,您可以直接访问$history变量。