0

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 

誰かがこれを行う方法を教えてもらえますか? ありがとう、

4

1 に答える 1

1

引用符で囲まれている場合puts r['effortRemaining'].inspectは、それが文字列であることを意味し、比較する前に数値に変換する必要があります。

これはうまくいくはずです:

if r['effortRemaining'].to_f > 0
于 2012-11-22T01:59:49.070 に答える