postController
public function edit(Post $post){
return view('posts.edit')->with('post', $post);
}
updateはget, postではなくpatch
@section('container')
<h1>
<a href="{{ url('/') }}" class="header-menu">Back</a>
Edit Post</h1>
<form method="post" action="{{ url('/posts', $post->id) }}">
{{ csrf_field() }}
{{ method_field('patch') }}
<p>
<input type="text" name="title" placeholder="enter title" value="{{ old('title', $post->title) }}">
@if ($errors->has('title'))
<span class="error">{{ $errors->first('title')}}</span>
@endif
</p>
<p>
<textarea name="body" placeholder="enter body">{{ old('body', $post->body)}}</textarea>
@if ($errors->has('body'))
<span class="error">{{ $errors->first('body')}}</span>
@endif
</p>
<p>
<input type="submit" value="Update">
</p>
</form>
@endsection
なるほど、慣れるまで少し時間がかかるかも。

Routingはpatchにする。
Route::get('/', 'PostsController@index');
// Route::get('/posts/{id}', 'PostsController@show');
Route::get('/posts/{post}', 'PostsController@show')->where('post','[0-9]');
Route::get('/posts/create', 'PostsController@create');
Route::post('/posts', 'PostsController@store');
Route::get('/posts/{post}/edit', 'PostsController@edit');
Route::patch('/posts/{post}', 'PostsController@update');
PostsController.php
functionのupdateを追加
public function update(Request $request, Post $post){
$this->validate($request, [
'title' => 'required|min:3',
'body' => 'required',
]);
$post->title = $request->title;
$post->body = $request->body;
$post->save();
return redirect('/');
}









