Ruby:根据数组值更改类

时间:2012-09-28 19:57:36

标签: html css ruby-on-rails ruby class

我正在寻找基于Ruby数组值的类创建HTML结构。 我有6个类将应用于8x8网格上的不同元素。 每行将是一个内部有8个span元素的div。在ruby中,每个嵌套数组都是div行,然后每个元素将是一个基于数组元素值分配类的span。

a = [[1,4,3,2,2,3,1,4]
     [4,5,6,6,3,2,3,5]]

因此,将使用适当的类创建两行,其中包含8个元素。 是否可以在Ruby中将数据结构转换为HTML?

2 个答案:

答案 0 :(得分:1)

也许这就是你想要的:

a = [[1,4,3,2,2,3,1,4],
     [4,5,6,6,3,2,3,5]]

html = ''
a.each do |row|
  html << "<div>%s</div>" % row.map { |c| %{<span class="#{c}"></span>} }.join
end

# puts html

<强>更新

换句话说:

html = a.map do |row|
  "<div>%s</div>" % row.map { |c| %{<span class="#{c}"></span>} }.join
end.join

答案 1 :(得分:0)

嗯...是的。 ......中的某些内容......

a.each do |subArray|
  puts "<div>"
  subArray.each do |element|
    puts '<span class="#{element}">Some text</span>'
  end
  puts "</div>
end

如果这不符合您的需求,请发布更具体的问题。