Pergunta

Vamos imaginar algo como isto:

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

Mais tarde eu posso fazer algo parecido com isto:

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

Existe alguma maneira eu posso definir o limite quando se utiliza a consulta nomeada, e não quando defini-lo? Eu realmente gostaria de fazer algo como:

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

ou

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

Thx com antecedência! : -)

Foi útil?

Solução

nada o impede de escrever o seu próprio método ou função que clones a consulta ilimitada chamado, define um limite para o clone e retorna resultados.

Outras dicas

Eu acho que o caminho mais curto pode ser:

Doctrine_Query::create()->select()->from('MyTable')->limit(5)->execute();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top