$user =newUser;//This will return a Doctrine Collection of all users with first name = Travis
$user->getTable()->findByFirstName("Travis");//The above code is actually an alias for this function call
$user->getTable()->findBy("first_name","Travis");//This will return a Doctrine Record for the user with id = 24
$user->getTable()->find(24);//This will return a Doctrine Collection for all users with name=Raphael and //type = developer
$user->getTable()->findByDql("User.name= ? AND User.type = ?", array("Raphael","developer"));
Merci pour la réponse Travis, mais ce n'est pas ce que je cherche. Je veux faire quelque chose comme ceci: $utilisateur = new Utilisateur; $utilisateur->nom="rafael"; $utilisateur->catégorie="développeur"; $q = Doctrine::getTable('Utilisateur')->findByExample($utilisateur); $q doit retourner une collection d'utilisateurs avec "rafael" que le nom et l' "développeur" en tant que catégorie. Savez-vous comment faire? Vérifiez le dernier morceau de code qui utilise la findByDql méthode. Qui devrait vous obtenir ce que vous cherchez.
Vous pouvez utiliser le
findBy
méthode, qui est héréditaire et est présent dans tous les référentiels.Exemple:
Vous pouvez créer
findByExample
méthode dans un de vos dépôts à l'aide d'une définition comme ceci:Dans l'ordre pour que cela fonctionne, vous devrez créer votre propre classe de base pour les entités, la mise en œuvre de la
toArray
méthode.MyEntity
peut être également une interface, qui votre entités spécifiques qui devront mettre en œuvre lestoArray
méthode de nouveau.À mettre à disposition dans tous vos dépôts, assurez-vous d'étendre votre base de référentiel de classe - dans cet exemple, le
MyRepository
.P. S je suppose que vous parlez de la Doctrine 2.x
OriginalL'auteur Nikola Petkanski
Oui.
Disons que vous avez un modèle appelé Utilisateurs. Vous avez deux classes suivantes
dans un autre objet, vous pouvez le faire
Vérifiez le dernier morceau de code qui utilise la findByDql méthode. Qui devrait vous obtenir ce que vous cherchez.
OriginalL'auteur Travis
Voir http://www.doctrine-project.org/projects/orm/1.2/docs/manual/dql-doctrine-query-language/en
OriginalL'auteur Carlo Lopez