如何使用symfony 3.4在ExceptionController中获取翻译器对象

时间:2019-04-08 17:06:26

标签: php symfony exception internationalization

使用symfony 3.4。当我需要在Controller中翻译某些内容时,请执行以下操作:

$this->get('translator')->trans('termsAndConditions'),

当我想根据HTTP状态代码转换显示的错误消息时,如何在ExceptionController中执行此操作?来自命名空间Symfony\Bundle\FrameworkBundle\Controller的Controller具有ControllerTrait方法的特征get()。名称空间Symfony\Bundle\TwigBundle\Controller下的ExceptionController未实现get()方法。

那我该如何访问翻译器对象?

1 个答案:

答案 0 :(得分:0)

我不建议对Symfony\Bundle\TwigBundle\Controller进行任何更改,因为在更新symfony本身时,它将被覆盖。

如果您希望根据HTTP状态代码显示自定义错误消息,请尝试customizing the error pages。我相信您可以在这些自定义模板中简单地使用翻译器,就像这样:

<div>
    {{ 'termsAndConditions'|trans }}
</div>