Comment retourner un tableau n'est pas un objet avec la doctrine findOneBy méthode dans symfony2?
J'ai une situation dans laquelle je veux interroger la base de données avec findOneBy($id) méthode de doctrine dans symfony2.
$namePosting = $this->getDoctrine()->getRepository('MyBundle:Users')->findOneById($userPosting);
Le résultat c'est un objet avec des propriétés protégées. Je tiens à le retourner directement un tableau. Comment cela peut-il être fait ?
OriginalL'auteur irimie andrei | 2014-05-15
Vous devez vous connecter pour publier un commentaire.
findOneBy(array())
retourne toujours null ou d'un objet.Mais vous pouvez utiliser à la place
findById($userPosting)
oufindBy(array('id' => $userPosting))
et il retournera un tableau, par exemple:Édité
Ou vous pouvez ajouter une méthode dans
UserRepository
classe:si vous avez $utilisateur = $this->getDoctrine()->getRepository('MyBundle:les Utilisateurs')->findById($userPosting)); la firtsname sera de $utilisateur->getFirstname(); (en supposant que vous avez une lecture de l'utilisateur classe d'entité nommée getFirstname()
Qui est parfait. Vous pouvez accéder à une propriété de ce genre, MAIS que faire si vous souhaitez revenir à l'objet entier converti en un tableau ? Pouvez-vous le faire directement, ou vous avez besoin d'utiliser le sérialiseur de symfony ?
Vous pouvez créer une requête personnalisée dans votre référentiel et appel getResult(Querry::HYDRATE_ARRAY). Veuillez voir mon post édité.
MERCI BEAUCOUP! 🙂
OriginalL'auteur Ioana Hazsda