0
我在symfony的表单类型如下设置一个实体构件内“createQueryBuilder”:Symfony2的:如何使获取连接的实体部件
$builder->add('work_unit', 'entity', array(
'class' => 'TestProjectBundle:WorkUnit',
'property' => 'fullname',
'query_builder' => function (EntityRepository $er) use ($user_id) {
return $er->createQueryBuilder('wu')
->leftJoin('wu.work_category', 'wc')
->leftJoin('wu.workers', 'w')
->where('w.id = :worker_id')
->orderBy('wc.name, wu.name')
->setParameter('worker_id', $user_id); },
'expanded' => false,
'multiple' => false,
'empty_value' => '',
));
两个连接都没有取连接,这意味着仍然需要延迟加载来访问'wu.work_category'中的一些属性。
我怎样才能实现连接提取连接?我搜索了很多页面,但找不到示例。 任何帮助就可以了:-)
'query_builder'=>函数(EntityRepository $ ER)使用($ user_ID的){ 回报$ ER-> createQueryBuilder( 'wu') - > select('wc,w') - > leftJoin('wu.work_category','wc') - > leftJoin('wu.workers','w') - > where 'w.id =:worker_id') - > orderBy('wc.name,wu.name') - > setParameter('worker_id',$ user_id); }, 不幸的是不能正常工作,并产生此错误:第0行,col-1'SELECT wc,w'附近:错误:无法通过标识变量选择实体而无需选择至少一个根实体别名 – Nicki