Ruby on rails 命名错误测试:未定义方法

Ruby on rails 命名错误测试:未定义方法,ruby-on-rails,testing,undefined,Ruby On Rails,Testing,Undefined,我有多个设备,当进入每个设备时,信息会被分离出来。 但是,有时设备不符合标准,不会返回我正在查找的信息并收到错误消息: undefined method `[]' for nil:NilClass 这是导致问题的原因: <%= @device['summary.usrate']['_value'] %> 如果出现错误,如何测试打印“空白”以及变量(如果可用) <%= if @device['summary.usrate']['_value'] != nil print th

我有多个设备,当进入每个设备时,信息会被分离出来。 但是,有时设备不符合标准,不会返回我正在查找的信息并收到错误消息:

undefined method `[]' for nil:NilClass
这是导致问题的原因:

<%= @device['summary.usrate']['_value'] %>
如果出现错误,如何测试打印“空白”以及变量(如果可用)

<%= if @device['summary.usrate']['_value'] != nil print this_variable %>

之所以发生这种情况,是因为@device['summary.usrate']为零。试试这个:

对我来说似乎很管用。 我还尝试了以下我测试过的方法,效果良好:

<% if defined?(@device['summary.dsrate']['_value']) %>
   <%= @device['summary.dsrate']['_value'] %>
<% end %>