Мне нужно ранжировать записи в таблице базы данных на основе двух столбцов:
Availability_date
и
updated_at
Оба они являются столбцами типа дата-время, но условия для ранжирования не являются линейными по времени.Так, например, в шкале от 0 до 10 значения updated_at:
от 14 до 30 дней назад получат 10,
, тогда как от 13 до 9 дней назад получат 9,5,
от 31 до 60 получит 9,
и т. Д.
То же самое относится к столбцу «Availability_date».
Окончательный рейтинг / результат заказадолжно быть средним значением обеих шкал для каждой записи.
Я пытаюсь записать эту логику в контроллере и в идеале хотел бы избежать добавления столбцов в базу данных для построения индексов.
Я использую Ruby 2.5.1 и Rails 5.2.
Кто-нибудь знает, возможно ли это?
Заранее большое спасибо.