3

Symfony 1.4/Propel 1.4 を使用したクエリでは、ページネーションの目的で、次のように制限を設定する必要があります

Page1: LIMIT 0,6
Page2: LIMIT 6,6
Page3: LIMIT 12,6
.... & so on

私は試します

$c->setLimit(6);

生成しているもの

LIMIT 6

開始制限を設定するための 2 つのパラメーターまたは同様の関数を持つ setLimit メソッドも見つかりませんでした。これは非常に一般的な操作であり、Propel で使用できるはずですが、今のところわかりません。

誰かが必要な制限を設定する方法を提案できますか(LIMIT 0,6)

4

1 に答える 1

11

ここで説明されているlimit()とを使用する必要があります。offset()

為に

LIMIT 12,6

使用 (1.6 ModelCriteria を使用している場合)

$c->limit(6);
$c->offset(12);

古い基準を使用する場合:

$c->setLimit(12);
$c->setOffset(12);

ところで、なぜ独自のページャーを作成するのですか? Symfony は sfPager (ジェネリック) と、それをうまく処理するsfPropelPagerを提供します (カスタム基準を使用する場合でも、 を使用して定義できますsetCriteria())。

于 2012-09-04T07:37:33.060 に答える