Rubocop Lint / Void:在散列的无效上下文中使用的文字

时间:2019-04-30 06:07:08

标签: ruby-on-rails rubocop

我有此代码,rubocop告诉我“ Rubocop Lint / Void:在无效上下文中使用的文字”。如何修改此问题并解决此消息。谢谢。

e.messages.map.each { |key, message| { field: key, message: message } }

1 个答案:

答案 0 :(得分:0)

我认为问题在于完全使用mapeach。是的,您可以同时使用两者,但此处无需同时使用两者。 您应该使用:

e.messages.each { |key, message| { field: key, message: message } }

或者您应该使用:

e.messages.map { |key, message| { field: key, message: message } }

基本区别是each返回原始数组,而map返回结果数组。

mapeach之间的difference解释得很好。