Yii:如何在视图中定义布局的部分?

时间:2011-11-14 00:34:01

标签: ruby-on-rails view yii

在Rails中很简单:

查看有:

<% content_for :sidebar do %> ... sidebar HTML ... <% end %>

布局有:

<%= yield :sidebar %>

我可以在Yii中做同样的事吗?

更新:如何在main.php布局中同时使用动态页眉,内容和页脚?

3 个答案:

答案 0 :(得分:3)

查看有:

<?php $this->beginClip('sidebar'); ?>
Hi there!
<?php $this->endClip(); ?>

布局有:

<?= $this->clips['sidebar'] ?>

有关CController文档的更多信息。

但公平地说,这是做侧边栏的错误方法。

答案 1 :(得分:1)

您可以在基本控制器组件中定义public $sidebar。然后,您可以在视图或控制器中分配$this->sidebar,并在布局中检索$this->sidebar。您还应该查看可以在布局,控制器和视图中使用的renderPartial()来呈现部分HTML内容(没有布局的内容)。例如$this->renderPartial('/some/view')

答案 2 :(得分:1)

是的,你可以使用renderPartial(),

渲染部分内容

您可以查看renderpartial() here

您可以将其用作$this->renderPartial('/folder/view')