<ul> 元素的 Rails content_tag

Eli*_*ray 5 html ruby-on-rails content-tag

如何使用 content_tag 帮助程序获得以下 html 输出?

  <ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
  </ul>
Run Code Online (Sandbox Code Playgroud)

这是我目前所拥有的

  content_tag(:ul) do
    a=*(1..5)
    a.each do |step_number|
      content_tag(:li, class: "step") do
        puts step_number
      end
    end
  end
Run Code Online (Sandbox Code Playgroud)

更新 - 答案

感谢 Peter's Loop & output content_tags 在下面的帮助链接中的content_tag 中,我遗漏concat了这些li项目

  content_tag :ul do
    items.collect do |step_number|
      concat(content_tag(:li, step_number, class: "step"))
    end
  end
Run Code Online (Sandbox Code Playgroud)

Dan*_*nny 3

我想你需要解决的就是

content_tag(:ul) do
  (1..5).to_a.map do
    content_tag(:li, step_number, class: "step)
  end.reduce(&:+)
end
Run Code Online (Sandbox Code Playgroud)

那应该可以完成工作!