前回の記事に続きで。
バリデーション等はひとまず無視して突き進む。
// app/Http/Controllers/TaskController.php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; class TaskController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { return Task::get(); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { // } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { return Task::create($request->all()); } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show($id) { return Task::find($id); } /** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit($id) { // } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $task = Task::find($id); $task->fill($request->all())->save(); return $task; } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { return Task::destroy($id); } }
curlで確認する。
// 取得 curl -XGET localhost:8000/api/tasks // 作成 curl -XPOST localhost:8000/api/tasks -d 'name=vacuuming' // 更新 curl -XPUT localhost:8000/api/tasks/1 -d 'name=shopping&is_done=true' // 削除 curl -XDELETE localhost:8000/api/tasks/1