我正在关注Laravel的教程,但出现了一个错误:
The GET method is not supported for this route. Supported methods: POST.
php的代码是这样的:
Route::get('/', function () {
return view('welcome');
});
Auth::routes();
Route::get('/p/create', 'PostsController@create');
Route::post('/p', 'PostsController@store');
Route::get('/profile/{user}', 'ProfilesController@index')->name('profile.show');
而create.blade.php的代码是这样的:
<form action="/p" enctype="multipart/form-data" method="POST">
@csrf
...
PostsController.php的代码:
public function __construct(){
$this->middleware('auth');
}
public function create(){
return view('posts.create');
}
public function store(){
$data = request()->validate([
'caption' => 'required',
'image' => ['required', 'image'],
]);
auth()->user()->posts()->create($data);
dd(request()->all());
}
你有其他想法吗?