2

我没有找到如何在 extbase 控制器中使用流体部分以将其重用于 ajax 请求/响应的示例。

类似于 Tag f:render partial="" 但在控制器中以 json 响应返回 html。

4

1 回答 1

1

我找到了一个解决方案:

$this->templateView = $this->objectManager->create('Tx_Fluid_View_TemplateView');
$res = t3lib_extMgm::extPath($this->controllerContext->getRequest()->getControllerExtensionKey()) . 'Resources/Private/';
$this->templateView->setLayoutRootPath($res);
$this->templateView->setPartialRootPath($res . 'Partials/');
$this->templateView->setRenderingContext($this->objectManager->create('Tx_Fluid_Core_Rendering_RenderingContext'));
$this->templateView->setControllerContext($this->controllerContext);

$partial = $this->templateView->renderPartial($partialName, Null, $data);

但唯一的问题是 setRenderingContext 方法没有正确设置默认的 RenderingContext,我必须修改该方法。

于 2011-06-16T22:20:02.310 回答