我在ActiveAdmin中有一个名为events的表。
有一个名为eventdate的字段,此处有一个事件的日期。
我希望能够有一个动作,当当前日期超过事件日期时,表格会在名为'事件结束的选择框中自动选择'。这基本上说事件已经过期了。
这是可能的还是有一个gem已经为ActiveAdmin做了这个?
很抱歉这是一个基本的问题,但这就是我所拥有的。
干杯
答案 0 :(得分:1)
我会在您的活动模型上定义两件事:expired
范围和expired?
方法:
class Event < AR::Base
scope :expired, -> { where('eventdate < ?', Date.today) }
def expired?
eventdate < Date.today
end
end
要列出所有过期的活动,您只需致电:
Event.expired
如果列出所有事件并希望为过期事件添加一些自定义逻辑,则可以将此逻辑包装在if event.expired?
中。
您可能也应该反转范围:
scope :not_expired, -> { where.not('eventdate < ?', Date,today) }