0

我有一个多对多关系(AdditionalCostTemplate>Accommodation),并且我有一个扩展 EntityType 的自定义表单类型来填充我的 AdditionalCostTemplate 中的住宿。

如果我使用默认的 symfony2 EntityTypeFormtype,一切正常。如果我使用我的自定义 EntityType,它会将我的住宿实体包装在一个额外的ArrayCollection. 现在我将我的自定义实体剥离为仅具有不同的名称,仅此而已。错误仍然出现。

我的注释:

/**
 * AdditionalCostTemplate
 *
 * @ORM\Table()
 * @ORM\Entity()
 */
class AdditionalCostTemplate
{
    /**
     * @var PersistentCollection
     *
     * @ORM\ManyToMany(targetEntity="Acme\AccommodationBundle\Entity\Accommodation", cascade={"persist", "remove"}, orphanRemoval=true)
     */
    private $accommodations;
    [...]

我的实体表单类型:

class CallbackEntityType extends EntityType
{
    public function getParent()
    {
        return 'entity';
    }

    public function getName()
    {
        return 'acme_callback_entity_type';
    }
}

有人有什么想法吗?

4

1 回答 1

1

不确定,但可能是因为您既扩展了entity类型又将其定义为parent

尝试用extends EntityType...extends AbstractType替换

于 2014-11-17T12:05:19.600 回答