使用 jQuery Ajax Post 方法通过 Laravel 5.2 中的 RESTful 资源控制器将数据存储在数据库中

Storing data in datebase using jQuery Ajax Post mathod via RESTful Resource Controller in Laravel 5.2

我是 Laravel 的新手。我正在尝试使用 Jquery Ajax(使用 POST 方法)以表单形式存储一些数据。我正在使用 RESTful 资源控制器来处理商店请求。当使用带有 POST 方法的表单时,可以将路由用作 /student/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);
    });
});

有了资源路线,

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