我将重新使用Sonata Admin捆绑软件,并且我有一个有关带有基本单表翻译的Sonata翻译捆绑软件(Gedmo教义扩展)的问题。根据文档,我们需要在配置文件中为项目设置default_locale
和locales
的列表。对于具有某些固定语言环境的项目,此模式很好用。但是就我而言(我认为这也是很常见的),我希望它根据保存的配置有所变化。
有些名为Game
的实体对象具有一个称为Language
的关系实体(oneToMany),通过它可以为Game
设置多种语言并将其中一种设置为{{ 1}}。现在,在我的管理面板CRUD中,如果已经定义,则希望按照配置反映出来。否则,要使用后备区域设置。
所以事情会像这样:
1.从已登录用户的语言环境设置后备语言环境。
2. default_locale
CRUD的语言选项应来自Game
中定义的语言环境。
到目前为止,我可以通过admin类中的Game -> Languages
方法更改'locales'的列表,但是由于此方法中没有主题($ this-> getSubject()= null),则可以使用固定字符串,但是无法设置来自实体属性的动态值。
我的项目版本:
configuration()
N.B-由于缺乏声誉,我无法添加名为“ sonata-translation-bundle ”的标签。如果可以的话,请添加标签,以便于对其进行轻松排序。