Doctrine Named Queries: Spécifier la limite pour l'appel de requête
-
20-08-2019 - |
Question
Imaginons quelque chose comme ceci:
class MyTable extends Doctrine_Table
{
public function construct()
{
$q = Doctrine_Query::create()->from('MyTable t')
->orderBy('t.creationDate DESC')
->limit(5);
$this->addNamedQuery('top5', $q);
}
}
Plus tard, je peux faire quelque chose comme ceci:
$top5 = Doctrine::getTable('MyTable')->find('top5');
Existe-t-il un moyen de définir la limite lors de l'utilisation de la requête nommée, et non lors de sa définition? J'aimerais vraiment faire quelque chose comme:
$top5 = Doctrine::getTable('MyTable')->find('topX', 5);
ou
$top5 = Doctrine::getTable('MyTable')->find('topX', array('limit' => 5));
Merci d'avance! : -)
La solution
Rien ne vous empêche d'écrire votre propre méthode ou fonction qui clone la requête illimitée nommée, définit une limite sur le clone, puis renvoie les résultats.
Autres conseils
Je pense que le chemin le plus court peut être:
Doctrine_Query::create()->select()->from('MyTable')->limit(5)->execute();
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow