[英]Update user profile Laravel
我有一个问题,我无法更新用户资料,当我按“提交”时,我会收到一个过期的页面,我该如何解决?
我的表格:
<form method="post" class ="tab-pane" id ="edit" action="{{route('profile')}}">
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Email</label>
<div class="col-lg-9">
<input class="form-control" type="email" value={{$user->email}}>
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">About</label>
<div class="col-lg-9">
<input class="form-control" type="text" value={{$user->about}}>
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Skills</label>
<div class="col-lg-9">
<input class="form-control" type="text" value={{$user->skills}}>
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Hobbies</label>
<div class="col-lg-9">
<input class="form-control" type="text" value={{$user->hobbies}}>
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Address</label>
<div class="col-lg-9">
<input class="form-control" type="text" value="" placeholder="Street">
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label"></label>
<div class="col-lg-6">
<input class="form-control" type="text" value="" placeholder="City">
</div>
<div class="col-lg-3">
<input class="form-control" type="text" value="" placeholder="State">
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Username</label>
<div class="col-lg-9">
<input class="form-control" type="text" value={{$user->name}}>
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Password</label>
<div class="col-lg-9">
<input class="form-control" type="password" value={{$user->password}}>
</div>
</div>
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label"></label>
<div class="col-lg-9">
<input type="reset" class="btn btn-secondary" value="Cancel">
<<button type="submit">submit</button>
</div>
</div>
</form>
</div>
</div>
我的路线:
Route::post('/profile', 'UserController@update_Profile');
还有我的 UserController:
public function update_Profile(User $user) {
$this->validate(request(), [
'name' => 'required',
'email' => 'required|email|unique:users',
]);
$user->name = Request::input('name');
$user->email = Request::input('email');
$user->save();
Flash::message('Your account has been updated!');
return back();
}
我通过主题尝试了不同的方法但都失败了,您认为是什么问题? 也许是因为我如何定义视图或因为路线?
将@CSRF
放入您的表单中。 像这样:
<form method="post" class ="tab-pane" id ="edit" action="{{route('profile')}}">
@csrf
<div class="form-group row">
<label class="col-lg-3 col-form-label form-control-label">Email</label>
<div class="col-lg-9">
<input class="form-control" type="email" value={{$user->email}}>
</div>
</div>
...
...
</form>
看到这个: https : //laravel.com/docs/5.8/csrf
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.