JP *_*shy 6 ruby ruby-on-rails
我知道它是如何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
Run Code Online (Sandbox Code Playgroud)
它似乎不起作用,我怎么能正确地编写这个方法?
Bob*_*man 13
这不是有效的Ruby语法.你要:
@user.badges.any? { |b| b[:id] == 1 }
Run Code Online (Sandbox Code Playgroud)