0

I have this json respose and how can I validate this json request in laravel : https://pastebin.com/TP8VcLnk I know it's not the same w/ just handling basic inputs.

this is my vue code :

  updateUsersProfile(){
     axios({
        method: 'PUT',
        url: this.updateProfileEndpoint , 
        data: {
          form :  this.form
        },
      }).then(response => { 
        console.log(response);
      }).catch(error => {
        console.log(error.response.status);
      });
     } 

this is my code without the validation part, because I can't seem to validate everything

  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');



    }
TheBAST
  • 2,680
  • 10
  • 40
  • 68

1 Answers1

0

You can Laravel Requests Layer for the better experience. https://laravel.com/docs/5.7/validation#form-request-validation In your case, it will be something like updateProfileRequest and it will contain all the validation logic including custom validation rules and so on. And you controller will obtain valid request.

Shimazakhi
  • 31
  • 3