Я сейчас работаю над проектом, в котором я застрял в таком случае. У меня есть такая модель Notification .
t.string "subject"
t.text "content"
t.datetime "sent_at"
t.datetime "deleted_at"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "notification_type", default: 0
t.integer "platform"
t.datetime "start_date"
t.datetime "end_date"
Кроме того, у меня есть декоратор, как показано ниже
class NotificationDecorator < ApplicationDecorator
delegate_all
def notification_status
if object.start_date < ServerTime.now && ServerTime.now < object.end_date
"In progress"
elsif ServerTime.now < object.start_date
"Upcoming"
else
"Ended"
end
end
def notification_time
object.start_date.strftime(Settings.date_time_format) + " ~ " + object.end_date.strftime(Settings.date_time_format)
end
end
Как видите, я отмечу уведомление со статусом в соответствии с его start_date и end_date. И я хочу отсортировать список записей уведомлений в представлении по Status из этого декоратора. Есть ли способ сделать это с помощью Ransack sort_link , потому что я использую его прямо сейчас. Думаю, мне нужна какая-то область видимости или ransacker.
Кто-то может предложить мне добавить еще одно поле в таблицу уведомлений в качестве статуса, но я действительно не хочу этого делать по какой-то причине. Так что, если вы знакомы с Ransack или Scope и т. Д. c, пожалуйста, помогите мне!
Спасибо!