queryBuilder jointures qui disparaissent
J'ai fait une simple requete et mes jointures disparaissent.
ça devient un array et non plus un objet donc comment lire ses jointures d'une requete queryBuilder
la dans l'exemple j'ai l'id et le nom du fichier mais pas l'users ni le concours
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
<?php
namespace blogBundle\Entity;
/**
* filesRepository
*
* This class was generated by the Doctrine ORM. Add your own custom
* repository methods below.
*/
class filesRepository extends \Doctrine\ORM\EntityRepository
{
public function myFindAll()
{
return $this->createQueryBuilder('a')
// ->select('COUNT(a)')
->groupBy('a.users')
->getQuery()
->getScalarResult();
}
} |
mon entité
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
|
<?php
namespace blogBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* files
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="blogBundle\Entity\filesRepository")
*/
class files
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="fichier", type="string", length=255)
* @Assert\NotBlank(message="Please, upload the product brochure as a PDF file.")
* @Assert\File(mimeTypes={ "application/pdf", "text/plain", "application/vnd.openxmlformats-officedocument.wordprocessingml.document" })
*/
private $fichier;
/**
* @ORM\ManyToOne(targetEntity="concours")
*/
private $concours;
/**
* @ORM\ManyToOne(targetEntity="loginBundle\Entity\user")
*/
private $users;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set fichier
*
* @param string $fichier
*
* @return files
*/
public function setFichier($fichier)
{
$this->fichier = $fichier;
return $this;
}
/**
* Get fichier
*
* @return string
*/
public function getFichier()
{
return $this->fichier;
}
/**
* Set concours
*
* @param \blogBundle\Entity\concours $concours
*
* @return files
*/
public function setConcours(\blogBundle\Entity\concours $concours = null)
{
$this->concours = $concours;
return $this;
}
/**
* Get concours
*
* @return \blogBundle\Entity\concours
*/
public function getConcours()
{
return $this->concours;
}
/**
* Set users
*
* @param \loginBundle\Entity\user $users
*
* @return files
*/
public function setUsers(\loginBundle\Entity\user $users = null)
{
$this->users = $users;
return $this;
}
/**
* Get users
*
* @return \loginBundle\Entity\user
*/
public function getUsers()
{
return $this->users;
}
} |
J'ai utilisé du dql comme ceci:
Code:
1 2 3 4 5 6 7 8
|
public function myFindAll()
{
$query = $this->_em->createQuery('SELECT a FROM blogBundle:files a group by a.users');
$results = $query->getResult();
return $results;
} |
alors pourquoi la méthode queryBuilder ne prend elle pas les colonnes de jointure?