2009-06-25 13 views
2

Lassen Sie uns so etwas wie dies vorstellen:Lehre Benannte Abfragen: specifing Begrenzung Abfrage Anruf

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); 
    } 
} 

Später kann ich so etwas tun:

$top5 = Doctrine::getTable('MyTable')->find('top5'); 

Gibt es eine Möglichkeit, die Grenze einstellen, wenn Verwenden der benannten Abfrage und nicht bei der Definition? Ich würde wirklich lieben würde, wie etwas zu tun:

$top5 = Doctrine::getTable('MyTable')->find('topX', 5); 

oder

$top5 = Doctrine::getTable('MyTable')->find('topX', array('limit' => 5)); 

Thx im Voraus! :-)

Antwort

2

Nichts hindert Sie daran, Ihre eigene Methode oder Funktion zu schreiben, die die benannte unbegrenzte Abfrage klont, ein Limit für den Klon setzt und dann Ergebnisse zurückgibt.

1

denke ich, der kürzeste Weg sein kann:

Doctrine_Query::create()->select()->from('MyTable')->limit(5)->execute(); 
Verwandte Themen