Laravel RouteCollection.php 第 218 行中的 MethodNotAllowedHttpException:
Laravel MethodNotAllowedHttpException in RouteCollection.php line 218:
我是 laravel 的新手,当我遇到这个问题时,我正在尝试从 YouTube 教程中学习。我有一个注册表单,在提交时我正在发布表单数据并尝试将其保存在我的用户 table 中,但那是当我在 RouteCollection.php 行 218 中收到此异常 MethodNotAllowedHttpException 时:。我将不胜感激帮助解决这个错误。下面是我的代码
我的控制器
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
class UserController extends Controller
{
public function postSignUp(Request $request)
{
$email=$request['email'];
$first_name=$request['first_name'];
$password= bcrypt($request['password']);
$user =new User();
$user->email=$email;
$user->first_name=$first_name;
$user->password=$password;
$user->save();
return redirect()->back();
}
public function postSignIn(Request $request)
{
}
}
我的路由器
Route::get('/', function () {
return view('welcome');
});
Route::post('/signup', [
'uses'=>'UserController@postSignUp',
'as'=>'signup'
]);
我的表格
<form action="{{route('signup')}}" meathod="post">
<div class="form-group">
<label for="email">Email</label>
<input type="email" class="form-control" id="email" name="email" placeholder="Email">
</div>
<div class="form-group">
<label for="firstname">First Name</label>
<input type="text" class="form-control" id="first_name" name="first_name" placeholder="First Name">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" class="form-control" id="password" name="password" placeholder="passwprd">
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Sign up</button>
</div>
<input type="hidden" name="_token" value="{{Session::token()}}">
</form>
检查您打开的 <form>
标签。
meathod="post"
应该是
method="post"
您有一个错字,因此表单发布为 GET
而不是预期的 POST
.
无关,我建议使用更简单的 CSRF 输入形式
{{ csrf_field() }}
而不是
<input type="hidden" name="_token" value="{{Session::token()}}">
<form action="{{route('signup')}}" method="post">
{{ csrf_field() }}
<div class="form-group">
<label for="email">Email</label>
<input type="email" class="form-control" id="email" name="email" placeholder="Email">
</div>
<div class="form-group">
<label for="firstname">First Name</label>
<input type="text" class="form-control" id="first_name" name="first_name" placeholder="First Name">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" class="form-control" id="password" name="password" placeholder="passwprd">
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Sign up</button>
</div>
<input type="hidden" name="_token" value="{{Session::token()}}">
</form>
我是 laravel 的新手,当我遇到这个问题时,我正在尝试从 YouTube 教程中学习。我有一个注册表单,在提交时我正在发布表单数据并尝试将其保存在我的用户 table 中,但那是当我在 RouteCollection.php 行 218 中收到此异常 MethodNotAllowedHttpException 时:。我将不胜感激帮助解决这个错误。下面是我的代码
我的控制器
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
class UserController extends Controller
{
public function postSignUp(Request $request)
{
$email=$request['email'];
$first_name=$request['first_name'];
$password= bcrypt($request['password']);
$user =new User();
$user->email=$email;
$user->first_name=$first_name;
$user->password=$password;
$user->save();
return redirect()->back();
}
public function postSignIn(Request $request)
{
}
}
我的路由器
Route::get('/', function () {
return view('welcome');
});
Route::post('/signup', [
'uses'=>'UserController@postSignUp',
'as'=>'signup'
]);
我的表格
<form action="{{route('signup')}}" meathod="post">
<div class="form-group">
<label for="email">Email</label>
<input type="email" class="form-control" id="email" name="email" placeholder="Email">
</div>
<div class="form-group">
<label for="firstname">First Name</label>
<input type="text" class="form-control" id="first_name" name="first_name" placeholder="First Name">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" class="form-control" id="password" name="password" placeholder="passwprd">
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Sign up</button>
</div>
<input type="hidden" name="_token" value="{{Session::token()}}">
</form>
检查您打开的 <form>
标签。
meathod="post"
应该是
method="post"
您有一个错字,因此表单发布为 GET
而不是预期的 POST
.
无关,我建议使用更简单的 CSRF 输入形式
{{ csrf_field() }}
而不是
<input type="hidden" name="_token" value="{{Session::token()}}">
<form action="{{route('signup')}}" method="post">
{{ csrf_field() }}
<div class="form-group">
<label for="email">Email</label>
<input type="email" class="form-control" id="email" name="email" placeholder="Email">
</div>
<div class="form-group">
<label for="firstname">First Name</label>
<input type="text" class="form-control" id="first_name" name="first_name" placeholder="First Name">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" class="form-control" id="password" name="password" placeholder="passwprd">
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Sign up</button>
</div>
<input type="hidden" name="_token" value="{{Session::token()}}">
</form>