我如何在ruby中使用map方法调用方法链?

Kam*_*i81 4 ruby

我如何调用块_id.to_s在ruby中使用?

category_ids = categories.map(&:_id.to_s)
Run Code Online (Sandbox Code Playgroud)

我正在攻击它并立即执行以下操作:

category_ids = []
categories.each do |c|
  category_ids << c.id.to_s
end
Run Code Online (Sandbox Code Playgroud)

Win*_*eld 9

您可以传递一个块来映射并将表达式放在块中.可枚举的每个成员将连续产生块.

category_ids = categories.map {|c| c._id.to_s }
Run Code Online (Sandbox Code Playgroud)


meg*_*gas 7

category_ids = categories.map(&:_id).map(&:to_s)
Run Code Online (Sandbox Code Playgroud)

测试:

categories = ["sdkfjs","sdkfjs","drue"]
categories.map(&:object_id).map(&:to_s)
=> ["9576480", "9576300", "9576260"]
Run Code Online (Sandbox Code Playgroud)