如何在 erb 中使用带有枚举的块

How use block with enumerable in erb

如何在 erb(rails 视图)中使用可枚举块。例如:

<% <% @schedules.select do |s| s.class_room == 10 %>
  <%= s.class_room %>
<% end %> %>

我想要 select 记录字段 class_room 等于 10 的位置。我怎样才能在 erb 中做到这一点???

你有一些额外的 <%%>,但这可能有用:

<% @schedules.select { |schedule| schedule.class_room == 10 }.each do |schedule| %>
  <%= schedule.class_room %>
<% end %>

第一行只是 select 那些 class_room 在一行中是 10 的时间表,然后打开一个多行块,并在新的一行中使用 <%= %> 打开每个日程安排 class_room.


或者您可以在迭代期间传递到下一个元素 unless schedule.class_room 是 10:

<% @schedules.each do |schedule| %>
  <% next unless schedule.class_room == 10 %>
  <%= schedule.class_room %>
<% end %>