CakePHP 1.3 Paginateでの質問です。

商品売上順の配列$itemtop(id/rank)を使って商品マスタ(id/name/comment)でPaginateをしようとしているのですが、表示が商品マスタのModelにあるPrimaryKey=id順となります。※conditionsは$itemtopを指定しています。
この表示を配列$itemtopの順序でおこないたいのです。
配列の内容は
$itemtop
id,rank
095,1
002,2
043,3
147,4
537,5 のようになっております。
ご経験のある方いらっしゃいましたらご回答お願いいたします。
よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/04/13 17:35:09

回答0件)

回答はまだありません

  • id:tdoi
    どんなrelationが設定されていて、どんなpaginateを指定しているのか提示してもらえないと正確なことは言えないですが、order指定するだけでは?
  • id:momotaro2
    tdoi様
    ありがとうございます。
    relationはしてません。商品マスタの1テーブルのみです。
    paginateは以下になります。
    $this->paginate = array(
    'limit' => 15);
    $data = $this->paginate('Item', array('Item.id' => $itemtop));

    商品マスタ Model名=Item
    id,name,comment PrmaryKey=id

    商品売上配列 $itemtop ※売上トップ100位までの配列
    id,rank
    0095,1
    0002,2
    0043,3
    0147,4
    0537,5

    以上となります。

    よろしくお願いいたします。
  • id:tdoi
    勘違いしてました。ラインキング情報のテーブルと商品情報のテーブルが存在するのかと思ってました。
    $itemtopというのはDBにない情報なのですね。

    結論から言うと、paginateでは対処できないと思われます。
    自前でページングを管理するか、仕組みを変えるかしないといけないかと思います。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません