在我的ActiveAdmin模型中,我有一个自定义范围来显示已删除的记录和几个用于按特定列搜索记录的过滤器.
单独使用过滤器或组合使用过滤器可按预期工作.
使用范围按预期工作.
问题是使用范围似乎覆盖了所有过滤器,并且在选择范围后,添加的任何过滤器都不会做任何事情.
有人有任何想法吗?我想要的是能够显示特定的范围,然后仍然能够在该范围内过滤结果.
ActiveAdmin.register Example do
scope :deleted do |example|
Example.only_deleted
end
scope :all do |example|
Example.with_deleted
end
filter :title
filter :description
index do
column :title
column :description
end
end
Run Code Online (Sandbox Code Playgroud)
[更新]
这是我一直在使用的解决方案.我在模型上设置了with_deleted范围,并在侧面包含过滤器以显示/隐藏已删除的结果.不理想,因为最初删除的结果也会显示,但至少所有过滤器可以一起使用.
ActiveAdmin.register Example.with_deleted do
filter :title
filter :description
filter :deleted, :as => :select, :collection => {:true => nil, :false => false }
index do
column :title
column :description
end
end
Run Code Online (Sandbox Code Playgroud) 我有一个研讨会模型和一个研讨会:has_many时间表我可以通过在新方法中添加构建操作来轻松编辑和创建一个带有附加日程表的研讨会:
def new
@workshop = Workshop.new
@workshop.schedule.build
end
Run Code Online (Sandbox Code Playgroud)
这给了我5个相关的时间表:
def new
@workshop = Workshop.new
5.times do
@workshop.schedule.build
end
end
Run Code Online (Sandbox Code Playgroud)
但我需要的是能够从前端动态附加日程安排,默认情况下使用研讨会构建一个日程安排,每次用户点击"添加日程安排"时,添加一个新的日程安排表单以附加创建调用.
任何人都可以提供一些关于如何处理这种"轨道方式"的提示 - 感觉有一种超级简单的方法来处理这个过度复杂的问题.
提前致谢!