php - 将请求注入(inject) Symfony2 实体

标签 php mysql symfony dependency-injection doctrine

我有一个 Symfony2 项目,今天我被要求将其国际化。

我有几个 MySQL 实体和新翻译的内容,我想将它们放入一个表中,其中包含:

ID | language | content_key | content_translation

一旦设置了_locale,我希望能够在实体级别传递它,以便使模型层检索内容本身(如果该内容是可翻译的内容之一,则第二次调用翻译表)一)。

我尝试过使用 Translatable Extension,但由于它是一个预先存在的数据库和项目,所以这不是一个容易实现的方法。

如何将请求(或仅传递 _locale)注入(inject)到我的实体?

非常感谢, 安德里亚

最佳答案

我认为您正在使用 Doctrine 作为 Symfony2 的 ORM?

然后看看 Doctrine Extensions 。该 bundle 为您的实体提供了不同的新行为。 它还具有 translatable behavior这真的很强大。

在 Symfony2 中集成 Doctrine 扩展 is not so complicated .

如果您无法在代码/数据库中使用 Doctrine 扩展,我会尝试 Doctrine Event Listeners发展你自己的可翻译行为。

关于php - 将请求注入(inject) Symfony2 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33316816/

相关文章:

php - 如何使用 fullCalendar 插件在单个页面上显示 4 个日历?

php - 跨 Web 项目共享库

MySQL - 最后一天插入的平均百分比值

mysql - 使用 laravel4 框架的 AngularJS 中的 Splice 函数

javascript - ng-flow 抛出 404 错误

symfony - PHPStorm 中的“框架”选项卡为空

php - 为什么我们在 Symfony2 Controller 的方法中使用 "Action"?

php - MYSQL 从一个表复制字段到另一个表

javascript - Web 服务和 phonegap : best practices

php - 如何在 laravel 5.8 中使用批量分配上传图像?