我在使用动态 active admin 范围时遇到了问题。我尝试为我的应用程序中每个“项目”的“经理”创建一个范围。然而,当新经理被创建(或分配给项目)时,这些范围似乎没有更新,但如果重新启动服务器,则会更新。所以代码“有效”,但显然不是我想要的方式。作为ruby / rails新手,我不确定是否需要以某种方式“刷新”范围。
值得一提的是,我在Heroku Cedar上使用Rails 3.2和ActiveAdmin。
以下是相关代码(代码有效,但仅在重新启动服务器后才会带入新的经理):
值得一提的是,我在Heroku Cedar上使用Rails 3.2和ActiveAdmin。
以下是相关代码(代码有效,但仅在重新启动服务器后才会带入新的经理):
Manager.find_each do |m|
scope m.first_name do |projects|
projects.where(:manager_id => m.id)
end
end
整个 Active Admin 项目模型:
ActiveAdmin.register Project do
menu :priority => 1
index do
column :name
column :company_name
column :status
column :projection do |project|
number_to_currency project.projection
end
column :updated_at
default_actions
end
scope :all
scope :working, :default => true do |projects|
projects.where(:status => 'working')
end
Manager.find_each do |m|
scope m.first_name do |projects|
projects.where(:manager_id => m.id)
end
end
end