我正在使用rails 5.1.2和ruby 2.2.6。我正在尝试在集合上编写each
循环,并在erb
视图中为其生成一个rabio按钮和相应的标签。到目前为止,我得出了令人不满意的结果:
<% @idea.discussions.each do |discussion| %>
<%= radio_button_tag :discussion, discussion.id %>
<%= label_tag "discussion_" + discussion.id.to_s, discussion.title %>
<% end %>
这为集合的一个元素生成以下HTML:
<input name="discussion" id="discussion_3" value="3" type="radio">
<label for="discussion_3">Main discussion</label>
我不满意的是label_tag
的第一段,因为我手动构建了for
标记的label
属性的值。 rails的方法是什么?
答案 0 :(得分:1)
你也可以尝试:
<% @idea.discussions.each do |discussion| %>
<label for="discussion-<%= discussion.id%>">
<span><%= discussion.title %></span>
<%= radio_button_tag "discussions[discussion_id]", discussion.id, false, { id: "discussion-#{discussion.id}"} %>
</label>
<% end %>