php Laravel 8在一个页面中进行多分页,带有选项卡

fcy6dtqo  于 2023-01-24  发布在  PHP
关注(0)|答案(2)|浏览(179)

我有一个页面,其中有两个选项卡,每一个都有它的分页。只有当我点击选项卡时,它才能正常工作,但当我点击上一页或下一页时,它会一直返回到第一个选项卡。这是我的控制器代码:

$entries = Entry::paginate(5,['*'],'entries')
        ->appends(request()->except('entries'));
 $company_responses= CompanyResponse::paginate(5,['*'],'company_responses')
        ->appends(request()->except('company_responses'));

展出

{{$entries->appends(request()->except('entries'))->links()}}

{{$company_responses->appends(request()->except('company_responses'))->links()}}

选项卡链接

<div class="tab">
    <button class="tablinks" onclick="openTab(event,'tab1')">الملاحظات</button>
    <button class="tablinks" onclick="openTab(event,'tab2')">القيود</button>
</div>

我不知道我需要做什么才能让它在以前或以前的工作。

kr98yfug

kr98yfug1#

为每个选项卡创建单独的查询并对结果进行分页

$tab1 = Model::where('column', 'value')->paginate(10);
$tab2 = Model::where('column', 'value')->paginate(15);

使用links()方法对每个选项卡进行分页的结果

<div class="tab-content">
    <div class="tab-pane active" id="tab1">
        @foreach($tab1 as $result)
            {{ $result->column }}
        @endforeach
        {{ $tab1->links() }}
    </div>
    <div class="tab-pane" id="tab2">
        @foreach($tab2 as $result)
            {{ $result->column }}
        @endforeach
        {{ $tab2->links() }}
    </div>
</div>
kr98yfug

kr98yfug2#

正如Crisha所建议的:为每个选项卡创建单独的查询并对结果进行分页

$tab1 = Model::where('column', 'value')->paginate(10);
$tab2 = Model::where('column', 'value')->paginate(15);

我想你应该可以用这个:

{{ $tab1->fragment('tab_id')->links() }}
{{ $tab2->fragment('tab_id')->links() }}

然后应该将tab #添加到分页链接中,您可能需要添加tab1 & tab2,其中is具有tab_id-因为这是未经测试的。

相关问题