0

デフォルトでは、私の EventsController (または任意のコントローラー) の 'index' アクションはエントリの完全なセットを返し、現在ログインしているユーザーによって作成されたイベントのみを表示したい (関連付けは明確に定義されており、イベント テーブルには外部キーがあります) user_id)。

以下は、cake bake コンソール コマンドから生成されたデフォルトの index アクションです。

class EventsController extends AppController {

    public function index() {
        $this->Event->recursive = 0;
        $this->set('events', $this->paginate());
    }
    ....
}

$this->paginate()使用する必要のあるエントリを取得しようとして$events = $this->find('all',$options)も、何も起こらなかったため、理解できないことがある可能性があります。ビューに返されるエントリに関する条件を指定する方法はありますか?

4

1 に答える 1

0

ページネーションに条件を設定する方法は docsにあります。基本的に、変数にユーザーIDが$userIDあり、イベントにuser_id列がある場合、次のように尋ねることができます

$this->set('events', $this->paginate('Event', array('user_id'=>$userID)));
于 2013-07-01T17:39:50.207 に答える