-2

我正在尝试使用 yajra/laravel-datatable 使用数据表服务器端创建一个表。我正确检索了数据,但由于警报错误说我无法在表中显示记录:“DataTables 警告:table id=table - Ajax 错误。有关此错误的更多信息,请参阅http://datatables。 net/tn/7 " 下面是我的代码:

刀片.php:

   <div class="table-responsive">
        <table id="table" class="display table-striped table-bordered">
            <thead class="tblTitle">
                <tr>
                    <th>ID</th>
                    <th>User ID</th>
                    <th>Title</th>
                    <th>description</th>
                </tr>
            </thead>
        </table>
    </div>

和我的脚本:

<script>
    $(function() {
        $('#table').DataTable({
        processing: true,
        serverSide: true,
        ajax: '{{ url('blog.getData') }}',
        columns: [
                { data: 'id', name: 'id' },
                { data: 'user_id', name: 'user_id' },
                { data: 'title', name: 'title' },
                { data: 'description', name: 'description' }
            ]
        });
    });
</script>

我的控制器:

use Illuminate\Http\Request;
use App\Models\Blog;
use Datatables;

class BlogManagementController extends Controller
{
    public function lists(){
       return view('blog.blog_management');
    }

    public function getData(){
        $blogs = Blog::select('id', 'user_id','title','description');
        return Datatables::of($blogs)->make(true);
    }
}

和我的路线:

    Route::get('blog', 'BlogManagementController@lists');
    Route::get('blog/getData', 'BlogManagementController@getData')->name('blog.getData');

当我检查/网络时,我得到了这个

在此处输入图像描述

4

1 回答 1

0

Ajax URL 将{{ route('blog.getData') }}代替{{ url('blog.getData') }}.

于 2019-01-26T09:28:30.690 回答