[英]yii framework render structure
我有一個關於在yii框架中渲染視圖步驟的問題,當我調用此行時:
$this->render('test',array('model'=>$model));
在column2布局形式中,首先關閉所有框架,運行layout-> main.php ,然后運行layout-> column2.php ,然后運行我的視圖站點 -> test.php。
我的問題是框架如何執行此步驟以及當我使用此命令時框架如何理解:
<?php echo $content;?>
哪個$content
現在適合使用?
TNX
這是一個自定義的column2布局。 我用它作為示例並解釋步驟
<?php /* @var $this Controller */ ?>
<?php $this->beginContent('//layouts/main'); ?>
<div class="span-19">
<div id="content">
<?php echo $content; ?>
</div><!-- content -->
</div>
<div class="span-5 last">
<div id="sidebar">
<?php
$this->beginWidget('zii.widgets.CPortlet', array(
'title'=>'Operations',
));
$this->widget('zii.widgets.CMenu', array(
'items'=>$this->menu,
'htmlOptions'=>array('class'=>'operations'),
));
$this->endWidget();
?>
</div><!-- sidebar -->
</div>
<?php $this->endContent(); ?>
然后依次執行代碼。 那個部分
<?php $this->beginContent('//layouts/main'); ?>
顯示主要布局
並在main.php布局main.php中
<?php echo $content; ?>
回顯column1.php或column2.php的內容,因此它們不替換main.php中的部分代碼,它們的內容僅在main.php內部回顯。
由控制器中的render調用的視圖的渲染在這里完成
<div class="span-19">
<div id="content">
<?php echo $content; ?>
</div><!-- content -->
</div>
這部分管理secondo列並結束內容
<div class="span-5 last">
<div id="sidebar">
<?php
$this->beginWidget('zii.widgets.CPortlet', array(
'title'=>'Operations',
));
$this->widget('zii.widgets.CMenu', array(
'items'=>$this->menu,
'htmlOptions'=>array('class'=>'operations'),
));
$this->endWidget();
?>
</div><!-- sidebar -->
</div>
<?php $this->endContent(); ?>
我希望這是有用的
控制器的渲染初始化$ content顯示在layout2 $ content ..中,這是在main.php $ content中渲染的另一個$ content中渲染的。
然后main.php $ content包含layout2和layout2的內容結果,並包含內容結果從您的視圖中獲取
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.