Gedmo 可翻译/默认语言环境和奏鸣曲管理包

Gedmo translatable / default locale and sonata admin bundle

我目前正在使用 sonata admin bundle 与 sonata translation bundle 和 gedmo translatable 来本地化我的实体,通常效果很好。我有一个带有字段 "title" 的类别 table,我将其本地化为 "category_translation" table。现在我可以看到,当我添加新项目时,默认语言环境 (en) 中的标题保存在 table "category" 以及 table "category_translation" 中.

当我更改默认语言环境中的类别名称时,只有 "category_translation" 中的字段会更新,但 "category" 中的标题字段保持不变。问题是存储库中默认语言环境的排序是由 table "category" 中的值完成的,因此如果标题已更改,则错误。 non-default 语言环境工作正常。

这种行为是正确的(感觉不对)还是我忘记配置了什么?

好的,我通过向 StoDoctrineExtensions-Bundle 添加以下选项解决了这个问题:

stof_doctrine_extensions:
    translation_fallback: false
    persist_default_translation: true