ページング

paginationクラスを使ってみたかったのでページング

ページング処理でフレームワーク時に毎度つまる?総数のカウント

今回はMySQLなのでSQL_CALC_FOUND_ROWSでLIMIT前の総数を取得したいと思い苦戦?

SQL普通に書いて走らせば何の問題もないけど、どうしてもActiveRecordでやりたかった。

databaseクラスはまだ(2.0.1)ユーザーバージョンに置換できないけど、元のクラスをいじるもなんともうまくいかない。

で、イロイロ考えた結果

てか飽きた

$this->db->select(“SQL_CALC_FOUND_ROWS *”, FALSE); ←無理やりすぎやな
$this->db->order_by(‘shop_id desc’);
$query = $this->db->get($this->_mTableName, $this->_mLimitPage, $vOffset);
$count_query =  $this->db->query(“SELECT FOUND_ROWS() as count”);
$count = $count_query->row();
$this->_mCount = $count->count;

return $query->result();

無理やりActiveRecordを使ってやったけど、やっぱ意味ないな

普通にSQL投げた方が開発は楽か

 

コメント(1)

  1. 元プログラマー

    お暇なようですね~。

    お仕事ですか?お遊びですか?それとも....

    返信

コメントする

投稿前の注意

  • 他の人に不快感を与える投稿や誹謗中傷するようなコメントはおやめください。
  • コメントを投稿する前によく読みなおして投稿しましょう。





トラックバック

この記事へのトラックバックURL
  http://www.uwabana.jp/zenkoku/wp-trackback.php?p=1764