以下将在messages数组中包含的所有实例上调用to_csv.
messages = Message.find(:all) csv = messages.map { |message| message.to_csv }
在Rails中,在Ruby 1.9中或通过其他方式使用Symbol#to_proc,您还可以将其缩短为:
csv = messages.map(&:to_csv)
当您想要进行更复杂的操作时,较长的形式很有用:
csv = messages.map { |message| if message.length < 1000 message.to_csv else "Too long" end }