我试图检查数组中是否有任何内容,但我对结果感到困惑。
markets.any? do |m|
m["market"]["name"] == "Atlanta"
end.should be_true
返回
You have a nil object when you didn't expect it!, You might have expected an instance of Array.
但
markets.empty? do |m|
m["market"]["name"] == "Atlanta"
end.should be_false
不会出错。但对我来说似乎是倒退,因为我想测试真假。我不明白为什么。任何?认为它是零。顺便说一句,数组中有 3 个项目,没有一个是零。
最佳答案
根据您的评论,哈希中不存在市场 key ,请尝试以下操作
markets.any? do |m|
m["name"] == "Atlanta"
end.should be_true
关于ruby-on-rails-3 - 阵列。任何?或.空? Rails 中的难题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8185195/