Зачем ActiveRecord выдавать дубликаты записей по транзакции_ сортировке и нумерации страниц? - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть запрос ActiveRecord ниже для извлечения транзакций из БД:

x = User.find(8).transactions.order(transaction_at: :desc).paginate(20, 1)// gives first 20 records with transaction_at sorted as descending.  

y = User.find(8).transactions.order(transaction_at: :desc).paginate(20, 2) // gives first 21st to 40 = 20 records with transaction_at sorted as descending.  

Теперь проблема в том, что запись №.20 для результирующего набора 'x' и 21 в результирующем наборе 'b' имеют одинаковые значения транзакции_at, из-за которых последняя 20-я запись набора результатов 'a' и первая 21-я запись набора 'b' являются дубликатами. Почему этот тип поведения?Это случай с уровнем ORM или Db?Что является вторым приоритетным столбцом по умолчанию для сортировки, если в первом упомянутом столбце есть записи с одинаковыми данными в отсортированном столбце, в вышеупомянутом случае «action_at »имеет 5 записей с одинаковыми данными транзакции.

...