给定一个名为Foo的activerecord模型,其范围需要这样的参数:
scope :updated_since, ->(dt) { where( "updated_at >= ?", dt ) }
如何在app / admin / foo.rb中使用它,即如何使用所需的参数调用它以便创建activeadmin范围按钮?
谢谢!
答案 0 :(得分:0)
您可以像这样在寄存器块中提供一个块
scope "last 10 days" do |foos|
foos.updated_since(Date.today - 10.days)
end
scope "last 30 days" do |foos|
foos.updated_since(Date.today - 30.days)
end
可以缩写为
%w(10 30).each do |days_string|
scope "last #{days_string} days" do |foos|
foos.updated_since(Date.today - days_string.to_i.days)
end
end
享受ActiveAdmin:)