2017-03-02 65 views
1

我不知道它,因爲模型,以分貝,我不知道在哪裏把模型文件和如何寫在上面,進出口新的laravel 5.2我不能插入數據使用AJAX在laravel 5.2

HTML( testing.blade.php)

<input type="text"id="name" name="name"> 
<button type="submit" id="add">ADD</button> 

AJAX

$("#add").click(function() { 
     $.ajax({ 
      type: 'post', 
      url: 'addItem', 
      data: { 
       '_token': $('input[name=_token]').val(), 
       'name': $('input[name=name]').val() 
      }, 
      success: function(data) { 
       alert(data); 
      }, 
     }); 
     $('#name').val(''); 
    }); 

路由

Route::post ('test', '[email protected]'); 

控制器

public function addItem(Request $request) { 
    $data = new Comments(); 
    $data->comment = $request->name; 
    $data->save(); 
    return response()->json ($data); 
} 
+0

應該是路由名稱,你的情況,而不是'測試「的addItem」 –

+0

而且有在刀片文件 –

+0

我已經改變爲「_token」沒有輸入元素阿賈克斯調用仍然不插入 – donnah

回答

1
  • 您需要添加CSRF領域,這個值發送到服務器。
  • 阿賈克斯網址需要匹配的路由元件(未與控制器功能名稱)

BLADE:

{{ csrf_field() }} 
<input type="text" id="commentName" name="commentName"> 
<button type="submit" id="add">ADD</button> 

AJAX:

$("#add").click(function() { 
    $.ajax({ 
    type: 'post', 
    url: '/add-item', 
    data: { 
     '_token': $('input[name="_token"]').val(), 
     'name': $('input[name="commentName"]').val() 
    }, 
    success: function(data) { 
     alert(data); 
    }, 
    }); 
    $('#name').val(''); 
}); 

路線:

Route::post ('add-item', '[email protected]'); 

Documentation regarding to CSRF Protection.

在Ajax調用URL