我在symfony 1.4.6 ...
中的任务内部渲染部分内容$this->configuration = $this->createConfiguration(app, env, false);
$this->configuration->loadHelpers(array('Partial'));
$context = sfContext::createInstance($this->configuration);
$html = get_partial(partialName, params);
...在partial内部有一个自定义助手的引用,无法从默认上下文中引用,因此抛出异常......
Unable to load "fooHelper.php" helper in: SF_ROOT_DIR/apps/frontend/lib/helper, SF_ROOT_DIR/lib/helper, SF_ROOT_DIR/lib/vendor/symfony/lib/helper.
...尝试从引用loadHelpers
中的模块名称的任务加载自定义帮助程序似乎无法解决问题......
$this->configuration->loadHelpers(array('Partial'), moduleName);
我试图加载的帮助程序是特定于模块的,我真的不想将它移动到上面例外中列出的默认项目帮助程序目录之一。任何帮助将不胜感激!
答案 0 :(得分:2)
请查看HelperHelper.php帮助文件的内容。 use_helper()可以部分使用,所以我想把这段代码放在partial的顶部可以完成这项工作:
$context = sfContext::getInstance();
$context->getConfiguration()->loadHelpers(array('Custom'), 'moduleName');