有沒有一種很好的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