2017-03-06 12 views
1

通常、私はajaxとlaravelで多くの作業をしませんが、私のlaravelアプリケーションでは、いくつかのAjaxリクエストを作成し、エラーやフィードバックを処理する必要があります。私は多くのマテリアルを見ていますが、バックエンドからフロントエンド(phpおよびjs)までのハドリングで正しい方法と最善の方法を探しています。ここで Ajaxリクエストの処理(成功、エラーメッセージ)

は、私のコードのJSです:

$(function() { 

      $('.send').click(function(event){ 

       event.preventDefault(); 

       $.ajax({ 
        url: "{{url('admin/posts/ajax')}}", 
        type: "post", 
        data: {'name':$('#name').val(), 'surname':$('#surname').val(), '_token': $('input[name=_token]').val()}, 
        success: function(data){ 
         console.log("sucess"); 
        } 
       }); 
      }); 

     }); 
    </script> 

コントローラー:

public function storeAjax(Request $request) 
    { 

     $validator = Validator::make($request->all(), [ 
      'name'    => 'required', 
      'surname'   => 'required' 
     ]); 
     if ($validator->fails()) { 
      return response()->json($validator->messages(), 200); 
     } 

    } 

しかし、私は500エラーを与えているので、誰かがlaravelとAjaxとのリクエストを処理するには最善の方法で私を導くことを願って。ここで

答えて

0

ルートが..

する必要があります...私はlaravelでPOSTリクエストを作るために、AJAXを使用して行う方法です

$("#form-id").submit(function(e){ 
    e.preventDefault(); 
    $.ajax({ 
     url: "url", //not the complete url, in your case it would be "admin/posts/ajax" 
     type: "POST", 
     data: new FormData(this), 
     contentType: false, 
     cache: false, 
     processData:false, 
     success: function(data){ 

      console.log("success"); 

     }, 
     error: function(data){ 
      var errors = data.responseJSON; 
      //print the errors 
     }   
    }); 
}); 

そして、どのように私は、コントローラにそれを処理します

public function store(Request $request) 
{ 

    // Validate the request... 
    $this->validate($request, [ 
     'name' => 'required', 
     'email' => 'email|required', 
    ]); 

    //store data into database 

    //return some data if required 
} 

Route::post('store', '[email protected]'); 
+0

laravelコントローラではどのように処理しますか? – Pedro

+0

答えを編集.. @Pedro –

関連する問題