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