【发布时间】:2012-11-22 01:51:43
【问题描述】:
从 Web 服务收集数据后,我试图只提取那些特定字段的值 > 0 的记录。我正在检查的字段是 FixNum 字段。我尝试过多种类似 .nil 的方法?或 > 0 等。但它们似乎都不起作用。
代码如下:
results.each do |r|
# puts "came"
if r['efforRemaining'] % 1 != 0 #i tried r['efforRemaining'].nil? ..
# i have values like 0.4, 0.5 etc for the field, hence i need to check if the value is greater than 0 or not only
puts "came!"
puts "#{r['mstone']} ... #{r['assignee']['id']} ... #{r['effortRemaining'].to_f}"
end
end
有人可以告诉我怎么做吗? 谢谢,
【问题讨论】:
-
如果
r['efforRemaining']是Fixnum,r['efforRemaining'] % 1将总是 是0。 -
该值是否确定存储为Fixnum(即不是字符串)?当你
puts r['effortRemaining'].inspect时你会得到什么 -
@AndyH,我得到“nil”或值(4 或“.01”)
-
如果这是您的实际代码,有一个错字可以解释您的问题:'efforRemaining' 应该是 'effortRemaining',不是吗?
标签: ruby-on-rails ruby fixnum