2013-12-12 17 views
6

seçin. Bu, bu set QueryBuilder'ı daha iyi bir çerez kodu ve bunu kullanarak temiz bir his için mümkün olduğunca kullanmak isterim.Symfony2'nin Doktrin querybuilder Şu anda bu Hizmetin yapıcı bir depo özgü querybuilder bir sınıf değişkeni seti kullanarak querybuilder ile veritabanını sorgular SF2 bir hizmet üzerinde çalışıyorum hepsi

Ben EntityManager bir sorgu oluşturma önlemek istiyorsanız, bunun yerine sadece sorgu bu önceden tanımlanmış QueryBuilder kullanarak.

ben gibi görünecektir şey/iş arıyorum şu:

$query = $this->fooRepository->createQueryBuilder('f')->select('*'); 
return $query->getResult(Query::HYDRATE_ARRAY); 

yukarıdaki (işe yaradı ise) olduğu gibi bildiğim kadarıyla veritabanındaki tüm foo iade ..

sadece iyi bir uygulama veya Impossi olmadığı için

createQuery() 

yöntemi:

i aptal olduğumu ve önceden tanımlanmış QueryBuilders açısından farklı bir şey yapmak ya da sadece kullanmak gerektiğini düşünüyorsanız Söylesene, bana söylemekten çekinme.

Teşekkürler!

cevap

7

Dene:

$qb = $this->fooRepository->createQueryBuilder('foo'); 
return $qb->getQuery()->getResult(Query::HYDRATE_ARRAY); 

seçkin (*) gerek yok. Tüm foo öğeleri, hiçbir yerde eklenmeyen maddelerden seçilecektir.

+0

Teşekkürler, işe yarıyor! – ZvL

+0

Birden çok birleştirme içeren sorguya ve bu birleştirme tablolarındaki tüm sütunlara da ihtiyaç vardır. Buna bir çözüm var mı? –

+0

Deneyin. Şaşırmış olabilirsin. – Cerad

İlgili konular