Story#120259603 - sort versions by id as otherwise postgresql becomes crazy on offset

This commit is contained in:
Vladimir Krylov 2016-05-25 11:20:45 +03:00
parent 4b9ba0fe13
commit a1dc8043ec
2 changed files with 4 additions and 4 deletions

View file

@ -30,12 +30,12 @@ class Admin::ContactVersionsController < AdminController
def show def show
per_page = 7 per_page = 7
@version = ContactVersion.find(params[:id]) @version = ContactVersion.find(params[:id])
@versions = ContactVersion.where(item_id: @version.item_id).order(created_at: :desc) @versions = ContactVersion.where(item_id: @version.item_id).order(id: :desc)
# what we do is calc amount of results until needed version # what we do is calc amount of results until needed version
# then we cacl which page it is # then we cacl which page it is
if params[:page].blank? if params[:page].blank?
counter = @versions.where("created_at > ?", @version.created_at).count counter = @versions.where("id > ?", @version.id).count
page = counter / per_page page = counter / per_page
page += 1 if (counter % per_page) != 0 page += 1 if (counter % per_page) != 0
params[:page] = page params[:page] = page

View file

@ -44,12 +44,12 @@ class Admin::DomainVersionsController < AdminController
def show def show
per_page = 7 per_page = 7
@version = DomainVersion.find(params[:id]) @version = DomainVersion.find(params[:id])
@versions = DomainVersion.where(item_id: @version.item_id).order(created_at: :desc) @versions = DomainVersion.where(item_id: @version.item_id).order(id: :desc)
# what we do is calc amount of results until needed version # what we do is calc amount of results until needed version
# then we cacl which page it is # then we cacl which page it is
if params[:page].blank? if params[:page].blank?
counter = @versions.where("created_at > ?", @version.created_at).count counter = @versions.where("id > ?", @version.id).count
page = counter / per_page page = counter / per_page
page += 1 if (counter % per_page) != 0 page += 1 if (counter % per_page) != 0
params[:page] = page params[:page] = page