从.each循环rails创建哈希结构

时间:2017-03-15 22:51:22

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

我正在解析一个html元素,我得到了一些div。我想通过每个div并根据每个循环的索引保存一些元素,但我尝试的不起作用,我找不到解决方案。

InstanceKey

保存后,我会将@col = {} divs.each do |div, index| puts index @col[index] = {} @col[index][:image] = div.css('div.item-content img').attr('src') @col[index][:title] = div.css('div.item-content h3').text end puts @col 元素传递给布局并使用 @col。 由于某种原因,索引为空,我无法正确保存任何内容。 render @col在每次迭代时都有内容。

1 个答案:

答案 0 :(得分:1)

您应该使用each_with_index功能。 https://ruby-doc.org/core-2.4.0/Enumerable.html#method-i-each_with_index

divs.each_with_index do |div, index|
    puts index
    ...
end