Doctrine Named Queries: Especificando límite en la llamada de consulta
-
20-08-2019 - |
Pregunta
Imaginemos algo como esto:
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);
}
}
Más tarde puedo hacer algo como esto:
$top5 = Doctrine::getTable('MyTable')->find('top5');
¿Hay alguna forma de establecer el límite cuando uso la consulta con nombre y no cuando la defino? Realmente me encantaría hacer algo como:
$top5 = Doctrine::getTable('MyTable')->find('topX', 5);
o
$top5 = Doctrine::getTable('MyTable')->find('topX', array('limit' => 5));
¡Gracias por adelantado! :-)
Solución
Nada le impide escribir su propio método o función que clona la consulta ilimitada nombrada, establece un límite en el clon y luego devuelve resultados.
Otros consejos
Creo que el camino más corto puede ser:
Doctrine_Query::create()->select()->from('MyTable')->limit(5)->execute();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow