我的Rails 2应用程序中有一个非常简单的管理控制器,它以只读方式显示模型的所有记录:
class Admin::InspectionsController < ApplicationController
active_scaffold :inspections do |config|
[:create, :update, :delete].each {|a| config.actions.exclude a}
config.actions.exclude :nested
end
end
我希望使这些模型对象可编辑,但前提是它们处于特定状态(即,在获得批准之前)。我可以通过从排除列表中删除:update来为所有Inspections
执行此操作,但我不想启用批量编辑。
有没有一种方法可以指定ActiveScaffold的条件操作?
我想您正在寻找这个:https://github.com/activescaffold/active_scaffold/wiki/Security.向下看"模型方法:限制其他任何东西"
长话短说,您启用所有操作,然后将方法添加到模型定义中,以切换每个记录的所述操作,如链接中所述。