具有CollectionType和EntityType子表单的Symfony表单

时间:2016-05-20 07:15:15

标签: php forms symfony entity symfony-forms

我遇到Symfony表单的问题。 错误是:

  

警告:spl_object_hash()期望参数1为对象,给定数组

有问题的实体是Immovables和Appointment,这是关系代码:

不动产:

/**
 * @ORM\ManyToMany(targetEntity="Appointment", mappedBy="immovables", cascade={"persist"})
 */
public $appointment;

/**
 * Constructor
 */
public function __construct()
{
    $this->appointment = new \Doctrine\Common\Collections\ArrayCollection();
}

预约:

/**
 * @ORM\ManyToMany(targetEntity="Immovables", inversedBy="appointment", cascade={"persist"})
 * @ORM\JoinTable(name="appointment_immovable")
 */
public $immovables;

 public function __construct() {
    $this->immovables = new \Doctrine\Common\Collections\ArrayCollection();
}

当有类似这样的CollectionType时,我有一个表单:

->add('immovables', CollectionType::class, array(
    'entry_type' => ImmovableAppointmentType::class,
    'allow_add' => true,
))

在表单子ImmovableAppointmentType中,我有一个像这样的EntityType:

->add('editoriale', EntityType::class, array(
     'class' => 'AppBundle:Immovables',
     'label' => false,
     'mapped' => false,
     'attr' => array('class' => 'form-control'),
     'multiple' => false,
     'empty_data'  => null,
     'query_builder' => function (EntityRepository $er) {
        return $er->createQueryBuilder('i')
                  ->where('i.deletedBy IS NULL');
        },
 ))

我在Twig模板中扩展,就像Symfony文档中使用的这个小提琴http://jsfiddle.net/847Kf/4/一样。

在控制器中,错误存在于持久性中,但我没有收到错误形式,实际上它是有效的。 但我收到这样的错误:

  

警告:spl_object_hash()期望参数1为对象,给定数组

我该怎样做才能解决这个错误?

0 个答案:

没有答案