0

我正在尝试处理来自数据库的数组/列表。这是我的做法:

@amenities = AmenitiesAndFeatures.select("name").where(is_amenities: true).order("name ASC")

div class="e-float-left">
    <%(@amenities.each) do |amenities|%>
        <p><input type="checkbox" class="listing-check">
        <%=amenities.name%></p>
    <%end%>
</div></td>

我可以使用此代码顺序显示数据。但我想为其添加一些逻辑。

我想要完成的是在 .Net 中创建一个类似于 for 循环的循环。我怎样才能像这样在 RoR 中构建它?

var x = amenities.length
for(int i = 0; i <= x/2;i++)
{
    <p><input type="checkbox" class="listing-check">
    amenities.name[i]</p>
}

我在我的erb视图上这样做。我试图在我的设施和功能上提取名称列并处理每一个但在一个循环内。

4

2 回答 2

2

请试试这个
x=@amenities.size/2
<% @amenities.each_with_index do |amenity,i|%>
<% if i <= x %>
<p><input type="checkbox" class="listing-check">
<%= @amenities[i].name %></p>
<% end %>
<%end%>

于 2013-08-08T04:51:51.763 回答
0
<%
half_amenities =@amenities.present? ? @amenities[0..((@amenities.length/2)-1)] : []
(half_amenities.each) do |amenities|%>
  <p><input type="checkbox" class="listing-check">
  <%=amenities.name%></p>
<%end%>
于 2013-08-08T05:11:44.477 回答