PGメモ

非エンジニアの記録

symfony sfPropelPagerのメモ

$page = $request->getParameter('page', 1);

$c = new Criteria();
$c->add(self::ID, 123, Criteria::EQUAL);
$c->add(self::IS_DELETE, false);

$pager = new sfPropelPager('User', 5); #model名,表示数
$pager->setCriteria($c);
$pager->setPage($page);
$pager->init();

$this->pager = $pager

だいたいこんな使い方

ページャー機能が必要なら真を返す。

->haveToPaginate()

★次のページ

->getNextPage()

★前のページ

->getPreviousPage()

★最初のページを返す(事実上「1」)。

->getFirstPage()

★現ページを中心としたn個の配列を得る(nのデフォルトは5。現在7ページを表示していれば{5,6,7,8,9}が得られる。1ページ目を表示していれば{1,2,3,4,5}と融通も利く)。

->getLinks(n)

★現在のページを返す。

->getPage()

★getLinks()で得られた配列の最終ページを返す。

->getCurrentMaxLink()

★最終ページを返す。

->getLastPage()

★全ページを通じた総レコード数を返す。

->getNbResults()