我有一个课程如下
class UserPerformance < ActiveRecord::Base
belongs_to :user
end
并且我在我的视图和规范中使用object.user_performance.something
,但如果user_performance
为nil则会抛出错误。处理这个问题的正确方法是什么?
我无法在规范中做到:... to eq(something: object.user_performance.something if object.user_performance)
等我想在object.user_performance.something
为零时每次user_performance
时都为零。
答案 0 :(得分:0)
您可以使用try
方法
object.user_performance.try(:something)
如果user_performance为nil,则返回nil:)
您也可以处理:
if object.user_performance.nil?
#ups error what next?
else
object.user_performance.something
end