Forms 带有查询生成器的Symfony2表单实体字段
我有一个带有实体字段的表单,没有查询生成器可以正常工作,但是使用查询生成器,表单显示查询结果,但在提交时无效Forms 带有查询生成器的Symfony2表单实体字段,forms,symfony,entity,query-builder,Forms,Symfony,Entity,Query Builder,我有一个带有实体字段的表单,没有查询生成器可以正常工作,但是使用查询生成器,表单显示查询结果,但在提交时无效 //tecnicosType $builder->add('dt', 'entity', array( 'class' => 'MSKLigaBundle:Jugadores', 'label' => 'DT', 'query_builder' => function( \MSK\LigaBundle\Entity\Jugadore
//tecnicosType
$builder->add('dt', 'entity', array(
'class' => 'MSKLigaBundle:Jugadores',
'label' => 'DT',
'query_builder' => function(
\MSK\LigaBundle\Entity\JugadoresRepository $er) use($equipoId){
return $er->getJugadores($equipoId);
},
'property' => 'nombreCompleto',
'empty_value' => "Sin definir",
'required' => false
))
功能是
public function getJugadoresQueryBuilder($equipo)
{
$queryBuilder = $this->createQueryBuilder('j');
return $queryBuilder->select('j')
->where('j.equipo_id = :equipo')
->setParameter('equipo', $equipo);
}
提交表格时,请返回
array
'dt' =>
array
0 => string 'This value is not valid.'
如果我来到查询生成器,表单验证就可以了。
我找不到解决方案,谢谢您的帮助。MSKLigaBundle:Jugadores实体是否有一些验证标记?注释或表单是否有任何验证?请粘贴一些相关代码。不,它们没有任何验证。那$equipoId是从哪里来的?如何声明以及在何处声明?这是equiposTecnicosType此表单的属性,由函数setEquipo设置$equipoId=$this->getEquipo;谢谢Debreczeni,问题是$equipoId,第一次传递这个值,但第二次没有传递$eQUOTECNICOS=新eQUOTECNICOS类型;$equipoTecnicos->setEquipo$equipo->getId;$formTecnicos=$this->createForm$equipoTecnicos,$tecnicos;