0
私は自分のappRoleで人をリストしようとしています。ここでは、コントローラがあります:2ページ目からLaravel paginatorで渡されたデータが失われました
public function indexByAppRole(Request $request, $appRoleId)
{
$h1 = AppRole::where('id', $appRoleId)->first()->name;
return view('admin.people.index', [
'people' => $this->people->byAppRole($appRoleId),
'appRoles' => $this->appRoles->forAll(),
'h1' => 'Role: '. $h1,
]);
}
ページネータは、リポジトリで使用されます。
public function byAppRole($appRoleId)
{
return Person::where('person_app_role.app_role_id', $appRoleId)
->join('person_app_role', 'person_app_role.person_id', '=', 'people.id')
->select('people.*') // fix ID confusion but why?
->paginate(20);
}
メインビューが返された人々を示しています。
<ul class="list-group nav nav-pills nav-stacked">
@foreach ($appRoles as $appRole)
<li>
<a href="{{ route('admin.people.appRole', ['appRoleId' => $appRole->id]) }}">{{ str_plural($appRole->name) }}</a>
</li>
@endforeach
</ul>
ナビゲーションリストは、検索結果やリストの1ページに動作しますが、リストはページ2ページ以降に表示されない:サイドバーでは、私はサイドナビゲーションとして、次のリストを持っています。私は何を間違えたのですか?
。ここに例があります[http://tutsnare.com/how-to-create-pagination-in-laravel/] Laravelのドキュメントもご覧ください。 [https://laravel.com/docs/5.3/pagination] – Manish
@ManishリポジトリでPaginateを使用しました。私はこれを反映するように本文を改訂しました。 –
2ページへのリンクはどのように見えますか?いくつかのgetパラメータが欠けている可能性があります。 getパラメータを使用してページ1を取得する場合は、ページ2への正しいリンクを得るために 'paginate(20) - > appends( 'あなたのget paramters)'を使用しなければならないかもしれません – rypskar