Php A2lix与许多实体的关系

Php A2lix与许多实体的关系,php,symfony,doctrine,a2lix-translation,Php,Symfony,Doctrine,A2lix Translation,我使用A2LiX I18n原则翻译实体,并使用A2lixTranslationBundle编辑/创建实体,但我在ontomany和manytomany关系方面存在问题 Product.php /** * @ORM\ManyToMany(targetEntity="hello\PlatformBundle\Entity\Base", cascade={"persist"}) */ private $bases; 我有一个Base.php,其中包含电话、地址等不可翻译的信息。。还有一个BaseTr

我使用A2LiX I18n原则翻译实体,并使用A2lixTranslationBundle编辑/创建实体,但我在ontomany和manytomany关系方面存在问题

Product.php

/**
* @ORM\ManyToMany(targetEntity="hello\PlatformBundle\Entity\Base", cascade={"persist"})
*/
private $bases;
我有一个Base.php,其中包含电话、地址等不可翻译的信息。。还有一个BaseTranslation.php,其中包含名称和描述等可翻译信息。 我想将其添加到我的产品表单中以选择一个或多个基础,但我无法访问可翻译名称,只能访问产品中的信息

->add('base',         'entity', array(
            'class'     => 'HelloPlatformBundle:Base',
            'property'  => 'city',
            'multiple'  => true,
            'expanded'  => true,
            ))
这是因为city位于Base.php中

->add('base',         'entity', array(
            'class'     => 'HelloPlatformBundle:Base',
            'property'  => 'name',
            'multiple'  => true,
            'expanded'  => true,
            ))
这不是因为名称在BaseTranslation.php中。 这是一种访问name的方法,可以在我的产品表单上用checbox显示所有可分配的base名称?

试试看

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

正如上面所解释的,当前实现需要为当前语言环境存在翻译。

谢谢,我使用$translation变量对本地用户进行了一些操作,以便在当前本地不存在翻译的情况下获取默认语言。