我想知道是否有人能够向我解释当我们称之为“渲染”时会发生什么。Yii:渲染过程
让我给你介绍我的问题:
这是我的行动:
public function actionIndex()
{
$new_user = new CustomUser;
$new_person = new CustomPerson;
$tab_person = $this->getListPerson();
$this->render('index',array('tab'=>$tab_person,
'user'=>$new_user,
'person'=>$new_person));
}
这是我的索引视图:
所以我的问题是,加载页面时间很长。 如果我把一个
死(“死”);
只是在我的actionIndex或在我的视图结束时(在renderPartial之后)执行渲染速度非常快。我会在0.3秒后看到“死亡”(如果我在声明的末尾加上声明)。但是如果我把它放在我的渲染之后,或者我没有放,那么我的页面将被正确加载,但是会在4-5秒之间加载。
所以我觉得我不太了解渲染后会发生什么。我再说一遍,如果我在查看页面结束时停止执行,速度非常快,但在我的行动结束时,它非常缓慢。我想过js和css,但是在看了看之后,我没有看到任何东西,Firebug向我显示这些文件加载非常快。 如果我把“die()”语句放在布局main.php的末尾,它的速度也非常快。
所以我知道渲染会显示该页面,并在布局包裹,但有另一种东西,也许这可以使动作很慢?
如果有人对我的问题有一个想法,我将非常感激。
对不起,如果我犯了错误,英语不是我的母语。
感谢您阅读我,有一个美好的一天:)
迈克尔
请参阅http://www.yiiframework.com/wiki/249/understanding-the-view-rendering-flow/。使用调试器浏览代码,看看发生了什么,使用分析器查看哪些部分花费最多时间。 – DCoder
要快速回答您的问题,请查看DCoder链接底部的箭头图。实质上,你的内容是内置的(基本视图和renderPartials,然后布局,然后是CSS/JS) – acorncom