我在Rails的2.3.5,我有這樣的問題:爲什麼Rails before_filter在控制器被子類化時調用兩次?
class BaseController < ApplicationController
before_filter :foo, :only => [:index]
end
class ChildController < BaseController
before_filter :foo, :only => [:index, :show, :other, :actions]
end
的問題是,在ChildController的:過濾器之前FOO被調用兩次。
我已經嘗試了一些解決此問題的解決方法。如果我不在孩子中包含:index
操作,它將永遠不會被請求執行該操作。
的解決方案,我發現的作品,但我認爲這是非常非常難看
skip_before_filter :foo
before_filter :foo, :only => [:index, :show, :other, :actions]
有沒有更好的辦法來解決這個問題呢?