我正在使用带有一个EntityType字段的表单(IngredienteType),该字段必须显示来自实体Grupo_ingrediente的多对一关系中的项目列表。 它正确显示项目但是当我发送表单时出现此错误:
“预期参数类型为”ComponentesBundle \ Entity \ Ingrediente“,”ComponentesBundle \ Entity \ Grupo_ingrediente“给出”;
堆栈跟踪:在第254行的vendor \ symfony \ symfony \ src \ Symfony \ Component \ PropertyAccess \ PropertyAccessor.php
这是一个非常简单的结构,但我对教条验证有错误,我不知道为什么。事实上,我已经制作了许多类似的形式没有问题。有什么想法吗?
我正在使用Symfony 2.8.23
由于
Form IngredienteType:
...
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
...
->add('grupoIngrediente', EntityType::class, array('class'=>'ComponentesBundle:Grupo_ingrediente', 'placeholder' => "", 'required'=>false))
...
;
}
...
实体成分
...
class Ingrediente
{
...
/**
*
* @ORM\ManyToOne(targetEntity="\ComponentesBundle\Entity\Grupo_ingrediente")
*/
private $grupoIngrediente;
...
实体Grupo_ingrediente
...
class Grupo_ingrediente
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="grupo_original", type="string", length=100, unique=true)
*/
private $grupoOriginal;
/**
* @var string
*
* @ORM\Column(name="grupo", type="string", length=100, unique=true)
*/
private $grupo;
/**
* @var bool
*
* @ORM\Column(name="activo", type="boolean")
*/
private $activo;
/*********Getters and setters*****************/
....
public function __toString(){
return $this->grupo;
}
}