我有一个Symfony2项目,今天我被要求让它国际化。
我有几个MySQL实体和新翻译的内容,我想放在一个包含以下内容的表中:
ID | language | content_key | content_translation
一旦设置了_locale,我希望能够在实体级别传递它,以使模型层检索自己的内容(如果该内容是可翻译的内容之一,则再次调用转换表)一个)。
我尝试使用可翻译扩展,但由于它是一个预先存在的数据库和项目,因此它不是一种简单的方法。
如何将请求(或仅传递_locale)注入我的实体?
非常感谢, 安德烈
答案 0 :(得分:2)
我认为您使用Doctrine作为与Symfony2的ORM?
然后看看Doctrine Extensions。此捆绑包为您的实体提供不同的新行为。 它还有一个非常强大的translatable behavior。
在Symfony2 is not so complicated中集成学说扩展。
如果您不能在您的代码/数据库中使用Doctrine Extensions,我会尝试Doctrine Event Listeners来开发您自己的可翻译行为。