组件中没有setTemplate()方法!我知道,但也许有其他方法可以实现吗?
(该问题似乎与一个 PHP 框架有关:http://www.symfony-project.org/)
组件中没有setTemplate()方法!我知道,但也许有其他方法可以实现吗?
(该问题似乎与一个 PHP 框架有关:http://www.symfony-project.org/)
在sfComponents上没有setTemplate方法。您基本上有三个选择:
executeFoo()
方法的组件,您想呈现_bar.php
模板,只需在_foo.php
中调用include_partial('bar', $vars)
。组件不处理模板,你只能使用部分视图。如果你需要在组件类内返回特定的部分视图,可以像这样操作:
return get_partial('module/action', array('paramName' => $paramValue));
echo get_component('module', 'action', $this->getVarHolder()->getAll());
return sfView::NONE;
return get_partial('module/partial');
但这只是不能绕过组件的常规模板。现在,多亏了这个回答,它对我来说就像这样工作:
echo get_partial('module/partial'); return sfView::NONE;
- Aitor$this->setVar('template', 'templateName');
显然,模板必须在完全相同的模块中。
include_partial('bar', $vars)
而不是include_partial('bar', $args)
。 - chiborg