gpt4 book ai didi

php - Symfony 2.4 在 TWIG 中渲染 Controller 抛出 "Rendering a fragment can only be done when handling a Request."异常

转载 作者:行者123 更新时间:2023-12-05 06:45:57 24 4
gpt4 key购买 nike

从 Symfony 2.3 升级到 2.4 后,抛出以下异常:

PageBundle::base.html.twig 中第 34 行的模板呈现期间抛出异常(“呈现片段只能在处理请求时完成。”)。

代码正在尝试渲染 Controller :

{% if not app.user %}
<div id="login" class="fourcol last">
{{ render(controller("SecurityBundle:Front/Security:login")) }}
</div>
{% endif %}

异常被 fragmentHandler 抛出,因为 $request 为空:

public function render($uri, $renderer = 'inline', array $options = array())
{
if (!isset($options['ignore_errors'])) {
$options['ignore_errors'] = !$this->debug;
}

if (!isset($this->renderers[$renderer])) {
throw new \InvalidArgumentException(sprintf('The "%s" renderer does not exist.', $renderer));
}

if (!$request = $this->getRequest()) {
throw new \LogicException('Rendering a fragment can only be done when handling a Request.');
}
var_dump($request); die();
return $this->deliver($this->renderers[$renderer]->render($uri, $request, $options));
}

这也发生在其他 Twig 渲染函数调用上。

composer 的 Symfony 组件版本列表:

symfony/assetic-bundle               v2.3.0
symfony/icu v1.2.0
symfony/monolog-bundle v2.3.0
symfony/swiftmailer-bundle v2.3.4
symfony/symfony v2.4.0

任何帮助将不胜感激

最佳答案

我有同样的错误,但如果我删除“vendor”文件夹并通过“php composer.phar install”重新初始化它,一切正常...

关于php - Symfony 2.4 在 TWIG 中渲染 Controller 抛出 "Rendering a fragment can only be done when handling a Request."异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20457807/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com