我在“ext_translations”表中有一个包含所有翻译的表。
翻译效果很好。现在的问题是:我想通过 sonata-admin bundle 管理这些翻译。
我已经找到了一个文档,如何使用奏鸣曲管理员获得工作学说扩展。但就我而言,我的所有翻译(用于多个实体)都有一个表/实体。
所以根据这个文档:http : //www.elao.com/blog/symfony-2/doctrine-2/how-to-manage-translations-for-your-object-using-sonataadminbundle.html 我的mappedBy应该是什么属性(见下文)?
ext_translations 表:
mysql> show columns from ext_translations;
+--------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| locale | varchar(8) | NO | MUL | NULL | |
| object_class | varchar(255) | NO | | NULL | |
| field | varchar(32) | NO | | NULL | |
| foreign_key | varchar(64) | NO | | NULL | |
| content | longtext | YES | | NULL | |
+--------------+--------------+------+-----+---------+----------------+
映射:
/**
* @ORM\OneToMany(targetEntity="ProfileTranslation", mappedBy="object", cascade={"persist", "remove"})
*/
protected $translations;
据我了解这里的问题:“我有一个复合键(objectclass(实体)+ name(属性)+ foreignKey(实体id)),那么'mappedBy'应该如何引用这个?
我不想为每个可翻译的实体创建一个额外的类(就像上面的教程一样)