我在 Rails 中有这个方法,当传入参数时它会跳闸,date_string
, is nil
。特别是当GetFileInfo -d
返回 nil 时。
处理这个问题的 Rails-y 方法是什么?
def calling_method
...
m = MyModel.create(creation_date: cdate_for(path))
...
end
def cdate_for(path)
local_datetime_for(`GetFileInfo -d "#{path}"`.chomp!)
end
def local_datetime_for(date_string)
t = Time.strptime(date_string, '%m/%d/%Y %H:%M:%S')
DateTime.parse(t.to_s)
end
从这里返回 nil 是可以的,假设Model.create(creation_date: return_value_here)
可以处理 nil 值。
编辑:添加了一些其他方法来说明调用链。