0

「トップ投稿」ウィジェットで投稿が何回表示される必要があるかを選択したいと思います。それを行うには、私のコントローラーで私は

public function menu() {
    return $this->Post->find('all', array(
                'limit' => 5,
                'order' => array('Post.id' => 'desc'),
                'conditions' => array('Post.hits >= 100'
                 )));
}

そしてそれは完全に機能します。ここで、自分の番号 (100) を

Configure::read('top_views');

しかし、私はどうすればよいかわかりません:/これで私を助けてくれる人はいますか?

4

1 に答える 1

0

メソッドを変更menuして、デフォルト値のパラメーターを取得し、条件配列を更新します。

public function menu($hits = 100) {
    return $this->Post->find('all', array(
                'limit' => 5,
                'order' => array('Post.id' => 'desc'),
                'conditions' => array('Post.hits >=' => $hits) // here
                 ));
}

次に、それを呼び出して、好きな値を渡すことができます:

$this->set('top_posts', $this->Post->menu(Configure::read('top_views'));
$more_than_500_hits = $this->Post->menu(500);

menuこれは、メソッドがPostコントローラーにあることを前提としており、独自のアプリの必要に応じて調整します。通常、この種のものはモデルに含まれている必要があります。

于 2013-02-03T14:31:49.707 に答える