首页 > 解决方案 > Laravel 数据表 - 未定义函数的错误

问题描述

我面临一个问题,将 Datatables 带入我现有的 laravel 应用程序。我关注了几个视频并被卡住了。

我的 MembersController.php 文件中有以下内容

namespace App\Http\Controllers;
use Alert;
use DataTables;

use App\Member;

class MembersController extends Controller
{

public function index()
{
    //

    return view('members.index');
    //, compact('members'));
}

function getdata()
{
    $members = Member::where('active', '!=', 'N')->where('member_type', 
'=', 'League')->get();
    return Datatables::of($members)->make(true);
}

我的 Route/web.php 中有以下内容

Auth::routes();
Route::get('/', 'HomeController@index')->name('home');
Route::resource('/members', 'MembersController')->middleware('auth');
// Ajax requests
Route::get('members/getdata', 'MembersController@getdata')->name('members.getdata');

我的 members/index.blade 中有以下脚本

<script>
    // Write on keyup event of keyword input element
    $(document).ready(function(){

     $('#table').Datatable({
         "processing": true,
         "serverSide": true,
         "ajax": "{{ rount('members.getdata')}}",
         "columns" :[
             {"data": "first_name"},
             {"data": "last_name"},
             {"data": "memberrank->rank"},
             {"data": "ActiveKids->sum('balance')"}
         ]
     });         

      $("#search").keyup(function(){
      _this = this;

      // Show only matching TR, hide rest of them
      $.each($("#roll tbody tr"), function() {

if($(this).text().toLowerCase().indexOf($(_this).val().toLowerCase()) === 
-1)
        {  
            $(this).hide();
        }
        else
        {
           $(this).show();
        }
      });
   });
 });
 </script>

但是我收到以下错误:“调用下划线函数 rount()

这将问题指向javascript

"ajax": "{{ rount('members.getdata')}}",

标签: ajaxlaravellaravel-datatables

解决方案


"ajax": "{{ route('members.getdata')}}",

推荐阅读