A2lix与实体的关系很多

时间:2014-11-21 23:09:31

标签: php symfony doctrine a2lix-translation

我使用A2LiX I18n Doctrine翻译我的实体并使用A2lixTranslationBundle编辑/创建它,但是我遇到了关于onmany和manytomany关系的问题。

Product.php

/**
* @ORM\ManyToMany(targetEntity="hello\PlatformBundle\Entity\Base", cascade={"persist"})
*/
private $bases;

我有一个Base.php,带有不可翻译的信息,如电话,地址..和BaseTranslation.php,带有可翻译的信息,如名称和描述。 我想将它添加到我的产品表单中以选择一个或多个基础,但我无法访问可翻译的名称,只能访问Product中的信息。

->add('base',         'entity', array(
            'class'     => 'HelloPlatformBundle:Base',
            'property'  => 'city',
            'multiple'  => true,
            'expanded'  => true,
            ))

这是因为城市在Base.php

->add('base',         'entity', array(
            'class'     => 'HelloPlatformBundle:Base',
            'property'  => 'name',
            'multiple'  => true,
            'expanded'  => true,
            ))

这不是因为名字在BaseTranslation.php中。 这是一种访问名称的方法,可以在我的产品表单上显示所有可选择的基本名称和checbox?

1 个答案:

答案 0 :(得分:0)

尝试

->add('base', 'a2lix_translatedEntity', array(
     'class'     => 'HelloPlatformBundle:Base',
     'translation_property'  => 'name',
     'multiple'  => true,
     'expanded'  => true,
 ))

关于http://a2lix.fr/bundles/translation-form/#bundle-additional的解释,当前的实现需要存在当前语言环境的翻译。