【问题标题】:How to remove brackets and quotation marks from array Ruby如何从数组Ruby中删除括号和引号
【发布时间】:2014-05-08 10:38:14
【问题描述】:

我有以下类方法:

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

谁能帮忙?

谢谢

【问题讨论】:

  • 您要查找的输出是什么?

标签: ruby arrays ruby-on-rails-4


【解决方案1】:

您的问题是如何自定义显示数组内容。一种可能的解决方案是使用Array#join 方法转换为字符串:

a.join(', ')
# => "T-Shirt Medium Grey, Sweatshirt Medium Black"

【讨论】:

  • 好极了!
  • 再次好样的!呵呵
【解决方案2】:

这应该可行:

def self.product(basket)
  Product.find(basket.to_a).map{|product| [product.name, product.size, product.color].join(" ")}.join(', ')
end

【讨论】:

    猜你喜欢
    • 2017-09-24
    • 1970-01-01
    • 2020-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多