bikedel said:
oops too hard for anyone to solve
I could be so much more sarcastic in a response ....
Anyways, I'm not sure what to tell you. I made a rest route and simi-duplicated the code you provided and it works or me.
\\ Laravel 5.1
Route::get('/test11', function (Request $request) {
// get the current page
$currentPage = Input::get('page', 1);
// set the current page
\Illuminate\Pagination\Paginator::currentPageResolver(function () use ($currentPage) {
return $currentPage;
});
// paginate with a length of 3 records
$menu = Menu::simplePaginate(3);
// return as json to view
// return $menu;
// using stringblade for render test, so i didnt need to make a template file
$template = '{!! $menu->render() !!}
@foreach ($menu as $m)
{{$m["id"]}} - {{$m["caption"]}}<BR>
@endforeach';
return view( ['template' => $template, 'secondsTemplateCacheExpires' => 0], ['menu' => $menu, 'page' => $currentPage ] );;
});
Hi TerrePorter
Thanks sooo much for the reply and not taking the sarcastic bait...
I will have a look at your solution and let you know how it went.
Thanks again!
Regards Bikedel
Hi TerrePorter
I set the page using the exact same function you used, as in my explanation.
I am using a simplePaginate(1) - I am displaying a page per record - I cant use simplePaginate(3).
It get's me to the correct page but I cannot move back or next.
Regards Bikedel
Ha Ha Bait!
The 'simplePaginate(3)' part specifies how many to put on each page, I just randomly selected that number on my end.
How are you accessing the next/prev?
I would make sure that your getting the next/prev links in the $properties, maybe returning it and looking at the json data.
Another test would be to manually change pages /www/?page=2 and see if that works, it could be just a problem with the link being displayed or the perhaps the routing maybe.
Happy Friday
I am using {!! $properties->render() !!}
manually changing pages does not work when I use currentPageResolver
it's as if the result from the db query only returned 1 row
Without using currentPageResolver : I am able to get the page number I want to change to in the view and setup a link to that page but it needs to go there automatically
ok, I am doing things backwards
I have just realised I am not looking to go to a specific page but rather a specific item !
because I use paginate(1) - I am kinda using each item as a page
bikedel said:
Happy Friday
I am using {!! $properties->render() !!}
manually changing pages does not work when I use currentPageResolver it's as if the result from the db query only returned 1 rowWithout using currentPageResolver : I am able to get the page number I want to change to in the view and setup a link to that page but it needs to go there automatically
I'm going to lean toward it is something wrong with the route.
You could try making a test route, like what I did, then once you have the code working there, then move it to the controller function.
bikedel said:
ok, I am doing things backwards
I have just realised I am not looking to go to a specific page but rather a specific item !
because I use paginate(1) - I am kinda using each item as a page
The problem is that if your item is on page 1 today and page 4 tomorrow. You could loop the currentPageResolver and simplePaginate, increasing the page number until you find the right page to display. That would mean the {!! $properties->render() !!} might not be used, since it will be pages not specific items.
But if your doing it this way, why use the paginate, just load all of the items in to a array and use JavaScript to do the paging.
Hi TerrePorter
I will try the test route you described.
Thanks for you time, it is appreciated.
Thanks TerrePorter, the problem was in my route. Fixed now thanks for your time.
ROUTE Route::get('/erf/{id}?page={item}', 'ErfController@test');
CONTROLLER
$currentPage = $item; Paginator::currentPageResolver(function() use ($currentPage) { return $currentPage; });
Sign in to participate in this thread!
The Laravel portal for problem solving, knowledge sharing and community building.
The community