AR模型中的值 - 如何检查所有方案

时间:2012-03-21 17:53:41

标签: ruby-on-rails erb

我的AR模型中有一个文本值,默认为null。我想检查值是否为空或不是空字符串。

<% if !item.public_notes.empty? && !item.public_notes.nil? %>
  <%=item.public_notes %>
<% end %>

这是错误:

ActionView::Template::Error (You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.empty?):

如果设置为null,则该属性将返回nil,并在第一种情况下出错。看起来我不应该嵌套这些。签入视图层的正确方法是什么?该错误是否指向上述问题?

THX

1 个答案:

答案 0 :(得分:2)

我会使用unless和rails helper blank?(检查它是否为空?或空?)

<% unless item.public_notes.blank? %>
  <%= item.public_notes %>
<% end %>