If I use pagination and manually change the page number query string parameter to a value less than 1 or greater than the total number of pages, no items are displayed. For example, if there are a total of 5 pages and I manually change the page number to 6, I expect to see the items for page 5. If I change it to -1, I expect to see the items for page 1. Is there any way i can get that?
This isn't and won't be built into will_paginate.
You can call out_of_bounds? on a paginated collection to check if the page number is too large for the current number of items. For page: -1, you'll have to create a separate special condition in your app.