获取数组的前 3 次出现

get first 3 occurrence of an array

在我的 rails 应用程序中,我使用以下代码打印数据库中的一些数据。

<% @di.each do |d| %>
  <% if d["visibility_team"] == 'for_all' %>
   //my code goes here
  <% end %>
<% end %>

我只想打印满足 d["visibility_team"] == 'for_all' 条件的前 3 次出现。

我该怎么做?

如果您无法从数据库中获取 @di 作为 3 条记录,如何记录打印了多少 d

类似这样的东西(随意按照你想要的方式设置它的样式)

<% counter = 0 %>
<% @di.each do |d| %>
  <% if d["visibility_team"] == 'for_all' %>
     <% counter += 1 %>
     <% break if counter == 3 %>
   //your code goes here
  <% end %>
<% end %>

然而,在视图中有这么多逻辑通常是一种糟糕的品味。