I have the following array on my rails console: u.favorites [#<Favorite id: 20, candidate_id: 6, ...>, #<Favorite id: 21, candidate_id: 7,..">, #<Favorite id: 22, candidate_id: 8, ...">, #<Favorite id: 23, candidate_id: 9, ...">, #<Favorite id: 24, candidate_id: 10, ...">] As you can see, I have candidate_id:6, candidate_id:7, candidate_id:8, candidate_id:9, candidate_id:10. But if I try this: u.favorites.include?(:candidate_id => 5) o canidate 6, 7, 8, 9 or 10 I get false. What I''m doing wrong? Thanks in advance for your help. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To view this discussion on the web visit https://groups.google.com/d/msg/rubyonrails-talk/-/7MZGsU3jlPYJ. For more options, visit https://groups.google.com/groups/opt_out.
On Sat, Jan 5, 2013 at 11:49 AM, Jean <josorioe-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> [#<Favorite id: 20, candidate_id: 6, ...>, #<Favorite id: 21, candidate_id: > 7,..">, #<Favorite id: 22, candidate_id: 8, ...">, #<Favorite id: 23, > candidate_id: 9, ...">, #<Favorite id: 24, candidate_id: 10, ...">] > > As you can see, I have candidate_id:6, candidate_id:7, candidate_id:8, > candidate_id:9, candidate_id:10. But if I try this: > > u.favorites.include?(:candidate_id => 5) o canidate 6, 7, 8, 9 or 10 I get > false. > > What I''m doing wrong?You''re trying to compare a Favorite object to a symbol. So either pass a Favorite object as an argument to `include?` for comparison or use something like `Enumerable#find` to select on your desired attribute (e.g. candidate_id). You might want to spend some time here: http://www.ruby-doc.org/core-1.9.3/ -- Hassan Schroeder ------------------------ hassan.schroeder-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org http://about.me/hassanschroeder twitter: @hassan -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit https://groups.google.com/groups/opt_out.
On Sat, Jan 5, 2013 at 1:49 PM, Jean <josorioe-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> I have the following array on my rails console: > > u.favorites > > [#<Favorite id: 20, candidate_id: 6, ...>, #<Favorite id: 21, candidate_id: > 7,..">, #<Favorite id: 22, candidate_id: 8, ...">, #<Favorite id: 23, > candidate_id: 9, ...">, #<Favorite id: 24, candidate_id: 10, ...">] > > As you can see, I have candidate_id:6, candidate_id:7, candidate_id:8, > candidate_id:9, candidate_id:10. But if I try this: > > u.favorites.include?(:candidate_id => 5) o canidate 6, 7, 8, 9 or 10 I get > false.u.favorites.keep_if { |f| f.canidate_id == 5 } -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit https://groups.google.com/groups/opt_out.