私.erb
の中には、単純なeach
ループがあります。
<%= @user.settings.each do |s| %>
..
<% end %>
現在最初の反復が行われているかどうかを確認する最も簡単な方法は何ですか?私は設定できることを知っていますi=0...i++
が、それは。の内部ではあまりにも厄介.erb
です。助言がありますか?
私.erb
の中には、単純なeach
ループがあります。
<%= @user.settings.each do |s| %>
..
<% end %>
現在最初の反復が行われているかどうかを確認する最も簡単な方法は何ですか?私は設定できることを知っていますi=0...i++
が、それは。の内部ではあまりにも厄介.erb
です。助言がありますか?
アレイのサイズによって異なります。それが本当に巨大な場合(数百以上)、.shift
配列の最初の要素を処理してから、コレクションを表示する必要があります。
<% user_settings = @user_settings %>
<% first_setting = user_settings.shift %>
# do you stuff with the first element
<%= user_settings.each do |s| %>
# ...
または、次を使用できます.each_with_index
:
<%= @user.settings.each_with_index do |s, i| %>
<% if i == 0 %>
# first element
<% end %>
# ...
<% end %>
私が見つけた最も読みやすい方法は次のとおりです。
<%= @user.settings.each do |s| %>
<% if @user.settings.first == s %>
<% # Your desired stuff %>
<% end %>
<% end %>