我想在Publishers
的名称空间中调用类的方法,例如Publishers::Vk
,其中嵌套的部分表示为类似provider_name = 'Vk'
的字符串。我做了类似的事情:
send("Publishers::#{provider_name}.new(#{@photo})")
我得到一个例外:
undefined method `Publishers::Vk.new(#<Photo:0x000000085e5440>)' for #<PhotoPublisher:0x00000008616c98>
如何实现此功能?
答案 0 :(得分:3)
Publishers.const_get(provider_name).new(@photo)