Ruby on rails 如果记录为';t found,使属性检查返回false,而不是错误

Ruby on rails 如果记录为';t found,使属性检查返回false,而不是错误,ruby-on-rails,ruby-on-rails-4,rails-activerecord,Ruby On Rails,Ruby On Rails 4,Rails Activerecord,我想检查两件事: 用户是否收到好友请求当前用户。朋友请求。通过接收者id(user.id)查找 如果是,他们接受了吗? 当前用户。朋友请求。通过接收者id(user.id)查找。已接受 问题是#2在不存在请求的情况下会引发错误。我如何避免这种情况,并让它返回false 如果记录不存在,您可以使用ActiveSupport的方法非常轻松地返回nil(错误): current_user.friend_requests.find_by_receiver_id(user.id).try(:accepte

我想检查两件事:

  • 用户是否收到好友请求<代码>当前用户。朋友请求。通过接收者id(user.id)查找

  • 如果是,他们接受了吗?
    当前用户。朋友请求。通过接收者id(user.id)查找。已接受


  • 问题是#2在不存在请求的情况下会引发错误。我如何避免这种情况,并让它返回false

    如果记录不存在,您可以使用
    ActiveSupport
    的方法非常轻松地返回
    nil
    (错误):

    current_user.friend_requests.find_by_receiver_id(user.id).try(:accepted)