Rails:如果没有找到对象,则返回一个字符串,而不是发送方法

时间:2013-01-02 15:24:27

标签: ruby-on-rails ruby-on-rails-3

我有一个通过“origin_user”与User模型相关联的Notification模型。

我正在寻找一条捷径:

if notification.origin_user.present?
  notification.origin_user.name
else
  "a user"
end

是不是有神奇的一体化功能?

1 个答案:

答案 0 :(得分:2)

notification.origin_user.try(:name) || "a user"

但如果您承诺User,请提供User。你可以依靠NullObject Design Pattern.