いくつかのビューを備えたRailsアプリがありますが、ビューが配列にデータが含まれていない場合は、別の何かを表示したいと思います。現時点では、私の見解は次のようになっています。
<% @trips.each do |trip| %>
<p><%= trip.id %> | <%= trip.name %></p>
<% end %>
しかし、これに何も入っていない場合に、いくつかの異なるテキストを表示する方法はあります@trips
か?
いくつかのビューを備えたRailsアプリがありますが、ビューが配列にデータが含まれていない場合は、別の何かを表示したいと思います。現時点では、私の見解は次のようになっています。
<% @trips.each do |trip| %>
<p><%= trip.id %> | <%= trip.name %></p>
<% end %>
しかし、これに何も入っていない場合に、いくつかの異なるテキストを表示する方法はあります@trips
か?
パーシャルを使用する場合:
trips/_trip.html
<p><%= trip.id %> | <%= trip.name %></p>
あなたの見解
<%= render @trips || 'No trip' %>
確かに、このように、そこにある場合は使用してください
<% if @trips.blank? %>
<p>No trips</p>
<% else %>
<% @trips.each do |trip| %>
<p><%= trip.id %> | <%= trip.name %></p>
<% end %>
<% end %>
ifステートメントを使用して、このようにnullまたは空かどうかを確認します
<% if @trips.nil? || @trips.empty? %>
<p>There are no trips</p>
<% else %>
<% @trips.each do |trip| %>
<p><%= trip.id %> | <%= trip.name %></p>
<% end %>
<% end %>
編集
Railsを使用する場合は、おそらく@ trips.blank?を使用します。別のルビーフレームワークまたはプロジェクトを決定する場合は、上記のif / elseコードを使用して、配列がnullまたは空かどうかを確認できます。
if/else条件付きチェックを使用できます。
<% if (@trips != nil) then %>
<p><%= trip.id %> | <%= trip.name %></p>
<% else %>
<p>Some message</p>
<% end %>
また
<% if (@trips.blank?) then %>
<p>Some message</p>
<% else %>
<p><%= trip.id %> | <%= trip.name %></p>
<% end %>