我知道 include?
是如何工作的,但是不太清楚将它与多维数组或散列一起使用(这可能与散列一起使用吗?)
例如,假设我有一个看起来像这样的哈希:
@user.badges => [{:id => 1, :name => 'blahh', :description => 'blah blah blah'}, {:id => 2, :name => 'blahh', :description => 'blah blah blah'}]
我能像这样看看它里面有没有id为1的对象吗?
if @user.badges.include?(:id => 1)
# do something
end
好像不行,这个方法怎么写好?
最佳答案
这不是有效的 Ruby 语法。你想要:
@user.badges.any? { |b| b[:id] == 1 }
关于ruby-on-rails - 在 ruby 中使用 `include?` 来检查是否有东西在哈希中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1737040/