我的 events.rb 中有以下代码。默认情况下,我将 sort_order 设置为 updated_at_desc。
但是如果 url 有一个参数ride_id (http://localhost:3000/admin/events?ride_id=3009) 我需要根据 created_at asc 对其进行排序。
它不工作。它仍然使用 sort_order updated_at_desc 获取结果。如何才能做到这一点。请帮忙。
下面的代码在我使用的以前版本的活动管理员上工作,但是当我将它更新到 0.5.0 时,我遇到了这个问题。
ActiveAdmin.register Event do
config.sort_order = 'updated_at_desc'
controller do
def scoped_collection
if params[:ride_id].present?
end_of_association_chain.select('events.*').where('events.booking_id = ?', params[:ride_id]).order('created_at asc')
else
end_of_association_chain.select('events.*')
end
end
end
结尾
我还使用了重新排序功能
end_of_association_chain.select('events.*').where('events.booking_id = ?', params[:ride_id]).reorder('created_at asc')
我仍然无法通过 updated_at_desc 覆盖默认排序。请帮忙。