如果我有这样的话,你可以添加HTML标签:
= skit.challenges.map(&:user).flatten.uniq.compact
我想在循环记录时添加一些ul
和li
。这是可能的还是我必须完全改变它?
答案 0 :(得分:2)
绝对可能,尽管你应该避免在视图中放置那种逻辑。在Rails的循环中,只需使用逻辑打开/关闭Web标记,然后在最后执行相同的操作。
<ul>
<% @skit_users.each do |user| %>
<li><%= user.name %></li>
<% end %>
</ul>
答案 1 :(得分:1)
使用content_tag帮助
arr = ["sdf<div>sdf</div>", "<script>alert(123)</script>", "sdf"]
content_tag(:ul, arr.map{|e| content_tag(:li, e) }.inject(:+))
>> "<ul><li>sdf<div>sdf</div></li><li><script>alert(123)</script></li><li>sdf</li></ul>"
答案 2 :(得分:0)
["a", "b", "c"]
>> a = arr.map {|u| "<ul>#{u}</ul>"}
["<ul>a</ul>", "<ul>b</ul>", "<ul>c</ul>"]
a = arr.map {|u| "<ul>#{u}</ul>"}.flatten.uniq.compact
["<ul>a</ul>", "<ul>b</ul>", "<ul>c</ul>"]
您可以尝试这样的事情,因为据我所知,您想要为您的视图文件动态创建一些html元素。