在Cakephp 2.4版本的控制器中,渲染视图需要检查视图文件是否存在?然后决定渲染。例如,我需要一些如下代码。
if( template_exist( $template_name ) )
{
$this->render( $template_name );
}
else
{
$this->render( $default_template );
}
目前我使用try / catch但我寻求最好的方法。我需要功能 template_exist 可以帮助吗?
答案 0 :(得分:1)
您可以通过创建新的View对象,然后使用elementExists()
检查模板是否存在,从控制器执行此操作: -
$View = new View($this, false);
if ($View->elementExists($templateName) === true) {
$this->render($templateName);
} else {
$this->render($defaultTemplate);
}
这样,Cake将检查元素模板的所有常用位置。