如何在laravel中的datatable函数中传递路由参数

问题描述 投票:-4回答:1

这是我的第一篇文章,请原谅我。我有一个名为messdata.blade.php的页面。我想为每个术语id更新此页面的数据表。

我的路线会是这样的

/管理/测量数据/ 1, /管理/测量数据/ 2, /管理/测量数据/第三

这里1,2,3是术语id。我想在数据表单中显示messdata。

Screen shot of the datatable

但是虽然我更改了id,但我的数据表卡在第一个id上并且没有改变。

这是我的控制器代码。

    public $termid=1;
    public function showmess($id)
    {
        $this->termid=$id;
        return view('foradmin.mess.messdata');
    }

    public function showmessdata()
    {
        $users= DB::select('select * from messes where  termno = :termno', ['termno' => $this->termid]);

        return Datatables::of($users)
        ->addColumn('action', function ($user) {
            return "<a href='/admin/perterminfo/$user->id' class='btn btn-xs btn-primary'></i><span class=\"glyphicon glyphicon-folder-open\"></span> OPEN</a>";
        })
        ->make(true);
    }

这是我在javascript中的数据表代码。

    <script>
        var table;
        $(function() {
            table=$('#users-table').DataTable({
                processing: true,
                serverSide: true,
                ajax: '{!! route('admin.messdatashow') !!}',
                columns: [
                    {data:'id',name:'id',searchable: false},
                    {data: 'messno', name: 'messno' },
                    {data: 'startat', name: 'startat',searchable: false },
                    {data: 'finishat', name: 'finishat',searchable: false },
                    {data:'messfee',name:'messfee', searchable: false},
                    {data:'extrafee',name:'extrafee', searchable: false},
                    {data:'fine',name:'fine',searchable: false},
                    {data: 'action', name: 'action', orderable: false, searchable: false},
                ]
            });
        });
    </script>

这是我的路线。

Route::get('admin/messdata/{id}','MessController@showmess')->name('admin.messdata');
Route::get('admin/messdatashow','MessController@showmessdata')->name('admin.messdatashow');
javascript jquery laravel datatables
1个回答
0
投票

你可以使用$ id = Request :: segment(3)从url获取id

© www.soinside.com 2019 - 2024. All rights reserved.