49362


ViewページではPaginationを表示していますが、番号が横並になっていないし、リンクを押したらNextページに行くのではなくて、メインページに戻ってしまいます。原因について意見はある方いますか？

これはリンクの見た目：  
[![画像の説明をここに入力](https://i.stack.imgur.com/407Oo.png)](https://i.stack.imgur.com/407Oo.png)

Controller は：

[code]

    $q = $request->q;
            if ($q !== null && trim($q) !== ""){//here
    
                $estates = \DB::table('allestates')
                    ->where("building_name","LIKE", "%" . $q . "%")
                    ->orWhere("address","LIKE", "%" . $q . "%")
                    ->orWhere("company_name","LIKE", "%" . $q . "%")
                    ->orWhere("region","LIKE", "%" . $q . "%")
                    ->orderBy('price')->get();
    
    
                $showPerPage = 10;
    
                $perPagedData = $estates
                    ->slice((request()->get('page')) * $showPerPage, $showPerPage)
                    ->all();
    
                $estates = new \Illuminate\Pagination\LengthAwarePaginator($perPagedData, count($estates), $showPerPage, request()
                    ->get('page'));
    
    
                if(count($estates) > 0){
                    return view("search", compact('estates'))->withQuery($q);
                }
    
            }
    
            $estates = array();//here
            return view("search", compact('estates'))->withMessage("No Found!");//here
        }
    
[/code]

ありがとうございます。

view.bladeではこれで呼んでいます。`{{ $estates->links() }}`


CC BY-SA 4.0
2018-10-16T08:04:57.400
49346
2018-10-16T16:01:47.153
2018-10-16T08:09:39.033
30379
30379
question
php laravel laravel-5
Laravel Pagination リンクは上手く接続していません。


問題が解決しました。

Controllerをこれに変えて

[code]

    $q = $request->q;
    $estates = \DB::table('allestates')
                    ->where("building_name","LIKE", "%" . $q . "%")
                    ->orWhere("address","LIKE", "%" . $q . "%")
                    ->orWhere("company_name","LIKE", "%" . $q . "%")
                    ->orWhere("region","LIKE", "%" . $q . "%")
                    ->orderBy('price')->paginate(10);
    
    return view("search", compact('estates','q'));
    
[/code]

View.bladeをこれに変えて

[code]

    @if(count($estates))
        @foreach($estates as $estate)
            <!-- ... -->
        @endforeach
        {{ $estates ->appends(['q' => $q])->links() }}
    @else
        <div class="alert">
            Not found!
        </div>
    @endif
    
[/code]

それでRouteをこのようにしました、

[code]

    Route::get("/search", "PagesController@search")->name('search.route');
    
[/code]


CC BY-SA 4.0
2018-10-16T16:01:47.153
49362
2018-10-16T16:01:47.153
30379
49346
answer