2

次のようなものを想像してみましょう。

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

後で、次のようなことができます。

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

名前付きクエリを定義するときではなく、使用するときに制限を設定する方法はありますか? 私は本当に次のようなことをしたいと思います:

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

また

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

事前にt​​hx!:-)

4

2 に答える 2

2

名前付きの無制限のクエリを複製し、複製に制限を設定してから結果を返す独自のメソッドまたは関数を作成することを妨げるものは何もありません。

于 2009-08-07T12:32:18.740 に答える
1

最短の方法は次のとおりだと思います。

Doctrine_Query::create()->select()->from('MyTable')->limit(5)->execute();
于 2011-09-23T11:02:14.010 に答える