组件没有setTemplate()!我知道但也许有另一种方法可以做到这一点?
(问题似乎是关于php框架:http://www.symfony-project.org/)
答案 0 :(得分:10)
sfComponents上没有setTemplate方法。你基本上有3个选择:
executeFoo()
方法创建_bar.php
模板的组件,只需在include_partial('bar', $vars)
内调用_foo.php
。答案 1 :(得分:5)
组件不处理模板,只能使用partials。如果需要从组件类中返回特定的部分,可以执行以下操作:
return get_partial('module/action', array('paramName' => $paramValue));
答案 2 :(得分:5)
为了解决这个问题,我正在做:
echo get_component('module', 'action', $this->getVarHolder()->getAll());
return sfView::NONE;
答案 3 :(得分:0)
这对我有用:
$this->setVar('template', 'templateName');
显然模板必须在完全相同的模块中。