我是Laravel的新手。我正在尝试使用Jquery Ajax(使用POST方法)将一些数据存储在表单中。我正在使用RESTful资源控制器来处理存储请求。当使用带有POST方法的表单时,可以将路由用作/student/store
。但是如何在此方法中路由到控制器中的store方法。简化代码如下。需要帮助。
("#btnSave").click(function(){
console.log("btnSave");
$.post("/student",
{
name: $("#studentname").val(),
age: $("#studentage").val(),
marks: $("#marks").val()
},function(data, status){
alert("Data: " + data + "\nStatus: " + status);
});
});
答案 0 :(得分:0)
使用资源路线
Route::resource('student', 'StudentController');
默认情况下,POST
请求会路由到store()
方法。您可以通过在控制台中执行以下操作来查看URL:
php artisan route:list | grep student
如果您手动将表单字段添加到ajax请求中,则会忘记CSRF令牌。如果缺少隐藏的_token
字段,请在表单中添加以下内容:
{{ csrf_field() }}
并更新您的ajax请求以反映新的_token
字段:
$.post("/student",
{
name: $("#studentname").val(),
age: $("#studentage").val(),
marks: $("#marks").val(),
'_token': $('input[name="_token"]').val()
}