【发布时间】:2016-08-01 15:09:15
【问题描述】:
我想加载两个选择列表,第二个仅加载基于第一个选择的一些值。但是我的问题首先出现...如何从与当前类(表单类型类)不直接相关的类中加载第一个列表中的 EntityType 值。
->add(
'cliente',
EntityType::class,
array(
'class' => 'AppBundle:Cliente',
'choice_label' => 'nombre',
)
)
但是这个实体中没有一个'cliente'字段,所以它会抛出你知道的消息......
既不是“cliente”属性也不是“getCliente()”方法之一, “cliente()”、“isCliente()”、“hasCliente()”、“__get()” 存在并且有 “AppBundle\Entity\Envio”类中的公共访问。
请问您知道如何解决这个问题吗?欢迎任何帮助!
【问题讨论】:
-
'mapped' => 'false' 呢??
-
有效!你知道如何添加事件监听器吗?我正在尝试访问此映射字段,但它没有出现在数据或表单中(event->getData 或 event->getForm)。我正在尝试这个: $builder->get('cliente')->addEventListener( FormEvents::POST_SET_DATA, function (FormEvent $event) { $form = $event->getForm(); $data = $event->getData (); 转储($form); ....
-
我发布了错误的答案。检查获取非映射字段的方式并尝试。