2011-08-09 12 views
0

私は単純なCakePHPコントローラを持っていて、インデックスメソッドを持っています。異なるCakePHPコントローラ "order by"

私の願いは1で、それは第二のカテゴリーからの第二に、最初のカテゴリから(リスト)レコードを選択します2例、のために、同じコントローラと同じ方法を使用することです。とてもシンプルに見えます。

しかし、この2つのケースでは、私は異なる "Order By" MySQLステートメントが必要です。

ページネーション方式を書き直す必要がありますか、それとも別の方法がありますか?

ありがとうございます!

UPDATE:これは、レコードの選択が行われる方法です。

$contents = $this->Content->find('all', array('fields'=>array('Content.*'), 'order'=>array('Content.id DESC'), 'conditions' => array('Content.category_id' => $category_id))); 

通常、私は

$data = $this->paginate('Content'); 

で改ページを行います。しかし、私ので、この場合には、それは、十分ではありません文

答えて

0

「並び順」が必要(少なくとも)二つの異なるちょうど$this->paginate('Model');$this->paginate['Model']['order']その間の通話を設定します。これが明確でない場合は、いくつかのコードで回答を更新してください。

$this->paginate['Content'] = array('fields'=>array('Content.*'), 'order'=>array('Content.id DESC'), 'conditions' => array('Content.category_id' => $category_id))); 
$contents = $this->paginate('Content'); 

ベアは心の中であなたは問題paginating 2 models on the same pageを持つことになります。

+0

私の質問が更新されました。どうぞご覧ください。 – user198003

+0

あなたが 'pr($ this-> paginate)'であれば私の答えが更新されました。それはあなたが意志で変えることができる変数であることは明らかです – Dunhamzzz