Forum: Ruby on Rails query for multiple possible values of a field

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
E43eedb17c626f5b9a4ad3b93cd51ef9?d=identicon&s=25 Naija Guy (naijaguy)
on 2009-02-20 20:58
http://geokit.rubyforge.org/readme.html

While browsing the above page, I looked at this query and wondered if it
could be changed to include multiple possible values for state:

find(:all, :origin => @somewhere, :within => 5,
:conditions=>['state=?',state])


How would I tell ActiveRecord to return any records where state was 'CA'
or 'TX' or 'NY'?  It seems like it'd be more efficient to go ahead and
constrain the results from the beginning...

Thanks!
A91bd6cef23eb3516245a092e196c4da?d=identicon&s=25 Maurício Linhares (mauricio)
on 2009-02-20 21:01
(Received via mailing list)
states = [ 'CA', 'TX', 'LA' ]
find(:all, :origin => @somewhere, :within => 5, :conditions=>['state
IN ( ? )',states])

-
Maurício Linhares
http://alinhavado.wordpress.com/ (pt-br) | http://blog.codevader.com/
(en)



On Fri, Feb 20, 2009 at 4:58 PM, Naija Guy
E43eedb17c626f5b9a4ad3b93cd51ef9?d=identicon&s=25 Naija Guy (naijaguy)
on 2009-02-22 01:12
Thanks a lot!  What if my attribute has multiple values?  For example,
if a user is associated with multiple states and the model User has an
attribute states that's a collection of strings how would I check that
against the query you showed me?  So user.states returns NY and MA, and
I'm trying to see if the given user's states is in the applicable states
for the rule?

I need to change the query to something like

user.states in states

...but it seems like I'll have to modify yours quite a bit more!



Maurício Linhares wrote:
> states = [ 'CA', 'TX', 'LA' ]
> find(:all, :origin => @somewhere, :within => 5, :conditions=>['state
> IN ( ? )',states])
>
> -
> Maur�cio Linhares
> http://alinhavado.wordpress.com/ (pt-br) | http://blog.codevader.com/
> (en)
>
>
>
> On Fri, Feb 20, 2009 at 4:58 PM, Naija Guy
This topic is locked and can not be replied to.