我有一個類調用不同的供應商來查找是否有可用的項目。我如何執行每個常量返回的類?Ruby - 從包含類名稱的CONSTANT調用一個類
class ItemProvider
ADAPTER_ONE = Providers::ItemFromSupplierOne
ADAPTER_TWO = Providers::ItemFromSupplierTwo
def get_item(item)
id = ItemDetail.new(item)
%w(ADAPTER_ONE ADAPTER_TWO).each do |provider|
item_detail = provider.new(id)
break if item_detail.valid?
end
item_detail
end
就像你在做。你不只是引用類名,它就是類本身。 –
@DaveNewton - 我如何引用類名。當我打印提供商的價值時,它只是說ADAPTER_XXX。 –
您正在創建一個字符串數組。把它們放在一個數組中。 –