我想使用Symfony2 Bundle继承功能来覆盖其核心转换组件。在我继续之前想要对它有一些建议。有可能吗?
答案 0 :(得分:2)
Symfony2可以轻松覆盖捆绑,但您希望覆盖翻译组件(有关{{3}中捆绑,组件和网桥之间差异的更多信息}})。
如果要覆盖翻译组件,可以利用依赖注入的优势。如果Symfony2框架使用翻译,它将使用其中一种翻译服务。因此,如果您需要覆盖任何您想要的内容,请编辑翻译服务。您可以在vendor/symfony/src/symfony/bundle/frameworkbundle/resources/config/translation.xml
找到所有翻译服务和参数。
您可以看到Symfony将他们用作服务的每个类存储为参数,您只需将参数更改为您想要的类名即可!
例如,我们想要覆盖Translator
。我们可以生成一个至少扩展Acme\DemoBundle\Translation\Translator
的{{1}}类,并将其添加到我们的服务配置中:
Symfony\Component\Translation\TranslatorInterface