public function index() { $query = Todo::query()->select('*')->where('status', '=', Todo::STATUS_INCOMPLETE)->orderBy('updated_at', 'desc'); $incompleteTodos = $query->get(); //$query = Todo::query()->select('*')->where('status', '=', Todo::STATUS_COMPLETE)->orderBy('updated_at', 'desc'); $completeTodos = Todo::whereStatus(Todo::STATUS_COMPLETE)->orderBy('updated_at', 'desc')->get(); //$completeTodos = $query->get(); Log::debug(print_r($incompleteTodos, true)); Log::debug(print_r($completeTodos, true)); $trashedTodos = Todo::onlyTrashed()->get(); return View::make('pages.todos.index', compact('incompleteTodos', 'completeTodos', 'trashedTodos')); }
/** * Todoリストページを表示する。 * * @return void */ public function index() { // クエリを作成する $query = Todo::query()->select('*')->where('status', '=', Todo::STATUS_INCOMPLETE)->orderBy('updated_at', 'desc'); // クエリを実行し、結果を取得する // MEMO 1件の場合はfirst()を使う $incompleteTodos = $query->get(); // 1.2. 完了リストを取得する // MEMO シンタックスシュガーを使うとこのようにシンプルに書ける。 $completedTodos = Todo::whereStatus(Todo::STATUS_COMPLETED)->orderBy('completed_at', 'desc')->get(); // 1.3. 削除済みリストを取得する // MEMO ソフトデリートされたデータのフィルタリングはonlyTrashed()を使う。 $trashedTodos = Todo::onlyTrashed()->get(); // 2. ビューを生成する // MEMO 引数のための配列を生成するとき、compact()関数を使ってもいい。 return View::make('pages.todos.index', ['incompleteTodos' => $incompleteTodos, 'completedTodos' => $completedTodos, 'trashedTodos' => $trashedTodos]); }