0

请查看我的代码,这是我的 web.php

Route::get('test', function (Request $request) {
  $data = MyTableResource::collection(MyTable::paginate(10));
  $headers = ['col1', 'col2', 'col3'];
  return view('test.index', compact('data', 'headers'));
});

这是我的刀片文件,

<table md-table>
    <thead>
        <tr>
            @foreach($headers as $header)
                <th><span>{{$header}}</span></th>
            @endforeach
        </tr>
    </thead>
    <tbody>
        @foreach($data as $d)
            <tr>
                <td>{{$d->id}}</td>
                <td>{{$d->primary_identifier}}</td>
                <td>{{$d->order_date}}</td>
            </tr>
        @endforeach
    </tbody>
</table>
<div class = "table-paginate">
    {{ $orders->links() }}
</div>

我的问题是,当我刷新页面时,URL 是 http://localhost/test?page=1

当我点击任何链接时,URL 只是替换为它的数字 ( http://localhost/test?page=2),而不是重定向。

我检查了分页链接,好像

<li class="page-item" aria-current="page">
  <a class="page-link" href="http://amzmarketplace.localhost.tom/test?page=2">2</a>
</li>

当我添加和属性到<a>标记时,它正在工作,即target="_self".

但是如何在 Laravel 分页 URL 中添加这个属性,或者有没有其他方法可以解决这个问题?

4

1 回答 1

0

在 Laravel 7.x 中,您可以在路由文件或控制器中自定义 URL,例如:

     Route::get('test', function (Request $request) {
      $data = MyTableResource::collection(MyTable::paginate(10));
      $data->withPath('custom/url');
...
    });

或者

还附加sort=votes到每个分页链接,您应该appends在视图中进行以下调用,例如:

{{ $data->appends(['sort' => 'votes'])->links() }}

查看laravel.com/docs/7.x/pagination#displaying-pagination-results文档链接

于 2020-08-27T05:16:19.420 回答