In the Enumerable's find_all method will be:
@products.find_all { |product| product.category_id = 2 }
This method returns an array, the find method returns only the first
match. This approach is not the best if you have a lot of products, in
that case you will use the ActiveRecord's find and let the database do
this work in a more efficient way.
Regards.
Franco Catena.
On Apr 23, 2:10 am, Robert Scott <[email protected]>
wrote:
> This is probably a basic question, but I was wondering if / how it's
> possible to run a find on an existing hash.
>
> For instance:
>
> 1. I need to pull all products in the database for a simple list:
> @products = Products.find(:all)
>
> 2. At a separate portion of the page, I want to display products that
> are in, say, category 5.
>
> From scratch, I could run...
> @new_products = Products.find(:all, :conditions => {:category_id => 5})
>
> Although, I thought you could also do
>
> @new_products = @products.find(:all, :conditions => {:category_id = 2})
>
> My query has been returning a wrong number of arguments (2 for 1), so I
> wasn't sure if I was headed on the right track.
> --
> Posted viahttp://www.ruby-forum.com/.
--~--~---------~--~----~------------~-------~--~----~
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 [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---