我知道怎么包括?然而,使用多维数组或散列(这可能与哈希一起使用)并不是很清楚吗?
例如,鉴于我有一个看起来像这样的哈希:
@ user.badges => [{:id => 1,:name => ‘blahh’,:description => ‘blah blah blah’},{:id => 2,:description => ‘等等等等等等’}]
我可以看看它是否有像这样的id为1的对象?
if @user.badges.include?(:id => 1) # do something end
它似乎不起作用,我怎么能正确地编写这个方法?
解决方法
这不是有效的Ruby语法.你要:
@user.badges.any? { |b| b[:id] == 1 }