Rails活动管理员范围与参数

时间:2016-01-08 07:44:30

标签: ruby-on-rails activeadmin

在此处解释了使用ActiveRecord范围的活动管理员:Rails3 Active Admin: How to display only Open status records when first click on Shipments tag?

现在我正在尝试使用params 来扩展

在我的模特中我有:

#app/models/shipments.rb
scope :by_status, -> (status) { where(status: status) }

我希望能够在app/admin/shipments.rb中使用它,就像

一样
# app/admin/shipments.rb
scope :by_status 'open'

是否有积极的管理方式来做到这一点?

1 个答案:

答案 0 :(得分:3)

您可以使用块:

  scope :open do |shipments|
    shipments.by_status('open')
  end

如果您希望这是默认范围:

  scope :open, default: true do |shipments|
    shipments.by_status('open')
  end