我有这行代码:
if request.user_agent.include?("iPhone") then
但我偶尔会收到此错误:
"undefined method `include?' for nil:NilClass"
检查错误的日志时,没有“HTTP_USER_AGENT
”表示收到错误的用户。
那么如何修复该行,以便在没有HTTP_USER_AGENT
的情况下不会引发错误?
答案 0 :(得分:2)
答案 1 :(得分:0)
检查它是否为零或自己解救异常。
答案 2 :(得分:0)
NSD是对的。
您还可以使用try
作为捷径:
request.user_agent.try(:include?, "iPhone")
try
在接收器为零时不会出错,因此您可以将它们链接在一起,如下所示:
foo.try(:bar).try(:baz)