I am a freshman when it comes to RoR, and I haven’t been able to figure
this out. I need to figure out how to query records in my database using
form check boxes (or radio buttons) then display them in that same
instance. What would this look?
I have been told that just putting a question mark after here,
:conditions => field = ?, but what would the argument look like?
One handy way is to use named parameters in the ‘conditions’ option:
Something.find(:all, [“blah = :foo or honk = :beep or other = :foo”,
params])
If you name your form fields “foo” and “beep”, such that params[:foo]
and params[:beep] give you the values you’re looking for, that find()
call will ‘just work’.
This worked well for me (after some trial and error).
Only slightly OT, how do you use these Named Variables and perform a
‘like’
query? Using ‘=’ works no problem, but I receive strange results when I
use
something like:
:conditions => [“FirstName like :firstname%”, {:firstname => firstname}]
ActiveRecord seems to put the ‘%’ symbol outside of the quoted value,
causing a SQL error.
If you need that kind of thing, you’re perhaps better off modifying
the params before passing them to the find().
e.g.
params[:firstname] += ‘%’
…which will append a % sign to the end of the value of :firstname.