我想要的是一個API,它根據通過初始化程序傳遞的參數來確定要委託方法的類。這是一個基本的例子:Ruby繼承和建議的方法?
module MyApp
class Uploader
def initialize(id)
# stuck here
# extend, etc. "include Uploader#{id}"
end
end
end
# elsewhere
module MyApp
class UploaderGoogle
def upload(file)
# provider-specific uploader
end
end
end
我想要的結果:
MyApp::Uploader('Google').upload(file)
# calls MyApp::UploaderGoogle.upload method
請注意上面是僅用於演示目的。我將實際上傳遞一個包含上傳者ID屬性的對象。有沒有更好的方法來處理這個問題?
謝謝,我會嘗試! – 2013-03-27 15:56:16