Order by score using Pagy pagination?
Hi everyone. I am currently trying to order some ActiveRecord records by score. In my controller i have:
def index @pagy, @drivers = pagy( Driver.select( 'drivers.*', '(drivers.no_races + drivers.no_poles + drivers.no_podiums + drivers.no_wins) AS score' ).reorder('drivers.score DESC'), page: params[:page], items: 16 ) end
I am using Pagy for the pagination. As the code shows, I do a query to select all drivers and then add together 3 columns in the table as 'score'. I then want to order by score going from high to low and show 16 records per page.
When the page loads it seems to order by driver id. I can't see anywhere else that i have an order by, but i did add reorder to override anything else.
Anyway for whatever reason i'm stuck with the wrong ordering. Any direction is appreciated :-)
Mockup - http://29qg.hatchboxapp.com/drivers
@joshBrody - just check
default scope is only going to be in the model or the controller i guess?