我自己需要这个,所以这里是质量检查风格的:

默认情况下,Rails Admin显示模型的default_scope。如何获得显示所有模型完全不受限制的模型的信息?

最佳答案

方法1

如果只需要列出记录,则可以使用scopes方法来控制返回哪些记录。第一个数组元素是默认元素,因此,如果将以下内容添加到初始化程序中:

list do
  scopes [:unscoped]
end

您将看到所有记录。

方法2

如果您想做的不仅仅是列出模型,您可以创建一个虚拟的rails admin模型。例如,假设您有一个带有 bool 存档标志的Post模型:
class Post < ActiveRecord::Base
  default_scope { archived: false }
end

您可以这样创建一个虚拟模型以在rails_admin中使用(在app/models/rails_admin中)
class RailsAdmin::Post < ActiveRecord::Base
  self.table_name = "posts"
end

然后,您将rails_admin配置为使用RailsAdmin::Post,所有Posts都将变为无作用域。

关于ruby-on-rails - 如何在Rails Admin中显示无范围的模型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20069425/

10-12 07:34
查看更多