Есть Api написанная на RoR с использованием гема Grape.
Выглядит примерно вот так:
class V1::Authenticated::PlanActions < Grape::API
resource :tickets do
get serializer: TicketSerializer do
available_tickets = Base.accessible_by(@ability).map(&:id)
ticket = Ticket.where(available_tickets_id: available_tickets)
ticket
end
end
end
Возвращает примерно вот такой JSON
[
{
"name": "MP-3",
"updated_at": "2019-06-19T14:18:27.371Z",
"review_status": "Not Started"
},
{
"name": "Co-1",
"updated_at": "2019-06-19T14:40:55.372Z",
"review_status": "Complete"
},
{
"name": "",
"updated_at": "2019-06-20T12:31:54.534Z",
"review_status": "In Progress"
},
{
"name": "CB-4e",
"updated_at": "2019-06-20T12:37:46.838Z",
"review_status": "Complete"
},
{
"name": "Coun62",
"updated_at": "2019-06-20T13:30:47.673Z",
"review_status": "Not Started"
},
{
"name": "5556jjj",
"updated_at": "2019-06-20T13:43:12.527Z",
"review_status": "Not Started"
}
]
C фронта приходят
params[page, per_page]
где page - нужная страница, а per_page - количество тикетов на странице.
Я знаю, что это можно реализовать с помощью готовых решений, таких как
Kaminari
Ну мне нужно это реализовать вручную, желательно с использованием limt, offence.
Подскажите, пожалуйста, новичку как это реализовать, что почитать, в каком направлении двигаться?
Заранее благодарю