有没有一种很好的DRY方式来重构我的控制器?我所有的控制器看起来确实只是改变型号名称相同,例如Ruby on Rails ApplicationController REST风格的动作
class ModelnamesController < ApplicationController
def index
@modelnames = Modelname.find(:all)
end
def new
@modelname = Modelname.new
end
...
end
等了7个默认的REST行动(指数,新,创建,更新,销毁,编辑,更新),我所有的控制器只是改变模型名称,所以,有没有办法将该代码放在ApplicationController
上,以便我的ModelnamesController和其他所有模型控制器仅从ApplicationController
扩展而来,如果我需要使某个动作不同而只是覆盖该动作?,我很希望我的控制器是这样的:
class ModelnamesController < ApplicationController
end
尝试Modelname.All而不是find(:all) –
@SamD我想知道的是,是否有办法将操作放在applicationcontroller中,并且它们适用于每个模型 – joseramonc
它的目标是https:// github.com/josevalim/inherited_resources由cancan – apneadiving