在Laravel 5.2中通过RESTful资源控制器使用jQuery Ajax Post mathod在datbase中存储数据

时间:2016-02-06 11:44:49

标签: jquery ajax laravel-5.2

我是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);
    });
});

1 个答案:

答案 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()
}