我有一个模型,其中默认范围仅显示状态设置为 0 的记录:
default_scope where(status: 0)
这工作正常,当我在 ActiveAdmin 页面中显示所有记录时,它只显示状态为 0 的记录。但是,我想在管理面板中创建另一个页面来显示所有记录,未限定范围。现在,我有:
ActiveAdmin.register Donation, as: "All Donations" do
scope_to :unscoped
index :title => "Donations" do
...
但我收到此错误:
undefined method `unscoped' for #<Admin::AllDonationsController:0x007feac043d638>
如果我在模型中为范围指定不同的名称,这种情况似乎仍然会发生。我该如何解决这个问题?
最佳答案
通过将其添加到捐赠登记 block 中,我能够得到我想要的东西:
controller do
def scoped_collection
Donation.unscoped
end
end
我仍然不明白为什么 ActiveAdmin 无法看到您在模型文件中定义的范围
关于ruby-on-rails - ActiveAdmin:未定义的方法 'unscoped',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16743658/