レコードが見つからない場合にデフォルトのメッセージが表示されるように、ifステートメントを作成しようとしています。私は現在これを持っています:
- if @n == nil || @n ==""
welcome
- else
- @n.each do |n|
= n.name
= raw " - "
= n.company
ただし、最初の行は無視され、必要に応じてレコードが表示されます。
レコードが見つからない場合にデフォルトのメッセージが表示されるように、ifステートメントを作成しようとしています。私は現在これを持っています:
- if @n == nil || @n ==""
welcome
- else
- @n.each do |n|
= n.name
= raw " - "
= n.company
ただし、最初の行は無視され、必要に応じてレコードが表示されます。
- if @n.blank?
welcome
- else
- @n.each do |n|
= n.name
= raw " - "
= n.company
インスタンス変数に空白を照会してみますか?:
- if @n.blank?
@nは文字列ではなくオブジェクトの配列であると想定されているので、空かどうかを確認する必要があります。
if @n == nil || @n == []
レール(したがってactivesupport)を使用している場合は、.blank?(他の人から提案された)これらすべてのケースで機能します
nil.blank? #=> true
"".blank? #=> true
[].blank? #=> true
メソッドの場合
if @object.blank?
#whatever you want to happen
else
#whatever you want to happen
ブロック内であれば
<% if @object.blank? %><%= #foo %>
<% else %>
<%= #bar %>
<% end %>