我重新放置了这个json,如何在laravel中验证这个json请求: https://pastebin.com/TP8VcLnk我知道只处理基本输入就不一样了。
这是我的Vue代码:
updateUsersProfile(){
axios({
method: 'PUT',
url: this.updateProfileEndpoint ,
data: {
form : this.form
},
}).then(response => {
console.log(response);
}).catch(error => {
console.log(error.response.status);
});
}
这是我没有验证部分的代码,因为我似乎无法验证所有内容
public function updateUsersProfile($userId)
{
if ( request()->isJson()){
/*Validate the request*/
$data = json_decode(request()->form, true);
return $data ;
}
else {
$this->validate($request,[
// all validation requirements
])
$user = auth()->user()->with('details')->find($userId) ;
$user->display_name = request()->get('display_name') ;
$user->username = request()->get('username');
$user->save();
$user->details->first_name = request()->input('first_name') ;
$user->details->middle_name = request()->input('middle_name') ;
$user->details->last_name = request()->input('last_name') ;
$user->details->address = request()->input('address') ;
$user->details->alternate_email = request()->input('alternate_email') ;
$user->details->bio = request()->input('bio') ;
$user->details->address = request()->input('address') ;
$user->details->save() ;
if (request()->wantsJson()) {
return response($user, 201);
}
return redirect()->route('students.dashboard');
}
答案 0 :(得分:0)
您可以通过Laravel Requests Layer获得更好的体验。 https://laravel.com/docs/5.7/validation#form-request-validation 在您的情况下,它将类似于updateProfileRequest,它将包含所有验证逻辑,包括自定义验证规则等。 您的控制器将获得有效的请求。