我有以下类方法:
def self.product(basket)
Product.find(basket.to_a).collect do |product|
product.name + " " + product.size + " " + product.color
end
end
以上产生以下内容:
["T-Shirt Medium Grey", "Sweatshirt Medium Black"]
我尝试了以下内容:
def self.product(basket)
a = Product.find(basket.to_a).collect do |product|
product.name + " " + product.size + " " + product.color
end
b = a.shift.strip
end
但这最终只给了我数组的第一部分T-shirt Medium Grey
我正在找它给我
T-shirt Medium Grey, Sweatshirt Medium Black
有人可以帮忙吗?
由于
答案 0 :(得分:9)
您的问题是如何自定义显示数组内容。一种可能的解决方案是使用Array#join
方法转换为字符串:
a.join(', ')
# => "T-Shirt Medium Grey, Sweatshirt Medium Black"
答案 1 :(得分:3)
这应该有效:
def self.product(basket)
Product.find(basket.to_a).map{|product| [product.name, product.size, product.color].join(" ")}.join(', ')
end