【问题标题】:Pagination for multiple search fields results laravel 5.8多个搜索字段结果的分页 laravel 5.8
【发布时间】:2019-08-11 08:05:01
【问题描述】:

我刚开始使用 Laravel,我正在尝试使用适当的分页创建多重搜索功能。该功能适用​​于第一页,但例如在第二页或第三页上不起作用。我认为它没有将结果提供给下一页,但我似乎找不到答案。


这是我在 ClientController 中的搜索功能:

public function search(Request $request)
{
    $clients = Client::
    when($request->nom, function ($query) use ($request) {
        $query->where('nom', 'like', $request->nom);
    })
        ->when($request->prenom, function ($query) use ($request) {
            $query->where('prenom', 'like', $request->prenom);
        })
        ->when($request->date_debut, function ($query) use ($request) {
            $query->where('date_naissance', '>=', $request->date_debut);
        })
        ->when($request->date_fin, function ($query) use ($request) {
            $query->where('date_naissance', '<=', $request->date_fin);
        })
        ->when($request->active, function ($query) use ($request) {
            $query->where('active', '=', $request->active);
        })
        ->paginate(10);

    return view('client.find', ['clients' => $clients]);
}

这是我的路线:

Route::get('search', 'ClientController@find');
Route::post('search', 'ClientController@search')->name('searchpost');

这就是我在 find.blade.php 中显示分页的方式:

<div class="row">
        <div class="col-md-12">
             @if(!empty($clients))
                 {{ $clients->links() }}
             @endif
        </div>
    </div>

这是第二页的网址:

/search?page=2

【问题讨论】:

    标签: laravel search eloquent pagination laravel-blade


    【解决方案1】:

    首先我将路线更改为:

    Route::get('search', 'ClientController@search')->name('search');
    

    我的看法是:

    <div class="row">
        <div class="col-md-12">
             @if(!empty($clients))
                 {{ $clients->appends(request()->except('page'))->links() }}
             @endif
        </div>
    </div>
    

    【讨论】:

      【解决方案2】:

      用途:

      ->paginate(10)->appends($request);
      

      【讨论】:

        猜你喜欢
        • 2017-02-24
        • 2017-01-12
        • 1970-01-01
        • 2021-03-24
        • 2019-10-03
        • 2020-10-04
        • 2018-01-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多