Laravel 在查询生成器上调用分页方法后 withQueryString 不存在

Laravel withQueryString does not exist after calling paginate method on query builder

Method Illuminate\Database\Eloquent\Collection::withQueryString does not exist.

当我写这段代码时出现了这个错误

blade;

<div class="float-right">{{ $modeller->withQueryString()->links()}}</div>

控制器;

public function index(){

    $modeller = Modeller::query();
    $koleksiyonlar = Koleksiyon::all();
    $modelistler = Modelist::all();
    $uretim_sorumlulari = Uretim_sorumlusu::all();

    if(request('model_kodu')){
        
        $modeller = $modeller->where('ModelKodu', 'LIKE', "%".request('model_kodu')."%");
    }
    if(request('koleksiyon_id')){

        $modeller = $modeller->where('koleksiyon_id', 'LIKE', "%".request('koleksiyon_id')."%");
    }
    if(request('uretim_sorumlusu_id')){

        $modeller = $modeller->where('UretimSor', 'LIKE', "%".request('uretim_sorumlusu_id')."%");
    }if(request('modelist_id')){

    $modeller = $modeller->where('modelist_id', 'LIKE', "%".request('modelist_id')."%");
}

    $modeller = $modeller->paginate(18);


    return view('kumas.index',compact('modeller','koleksiyonlar','modelistler','uretim_sorumlulari'));
}

paginate 方法对查询结果运行隐式 get。 尝试使用 withQueryString 而不是 paginate。 示例:

$modeller->withQueryString()->paginate(18);

但是从你的用例来看,我建议在你的视图中使用它,而不是查询字符串,这会将来自查询字符串的所有内容添加到你的链接中:

{{ $users->appends($_GET)->links() }}

有关分页和查询字符串参数的更多详细信息

页面、偏移量……以及分页需要的所有内容,将自动附加到分页功能,无需任何努力。 当你的 $_GET 中有一些过滤参数并希望在以下请求中保留它们时,你只需要明确地 ->appends($_GET) 当用户单击 下一页 上一页