Verify presence_of parameter

I would like to verify a parameter is present before a search is posted.

min_age = params[:min_age]
max_age = params[:max_age]

@users = User.find(:all,
:conditions => ["years >= ? AND years <= ? " min_age,
max_age])

Basically I am just concerned about the max_age.

I tried this:
min_age = params[:min_age]
max_age = params[:max_age]

if max_age.nil?
flash[:notice] = “please enter max age!”
redirect_to :action => “index”

@users = User.find(:all,
:conditions => ["years >= ? AND years <= ? " min_age,
max_age])

But the search still ran with a nil max_age parameter.

On 15 February 2010 03:07, Sean S. [email protected] wrote:

I tried this:
min_age = params[:min_age]
max_age = params[:max_age]

if max_age.nil?
flash[:notice] = “please enter max age!”
redirect_to :action => “index”

You need an else in here

Colin

On 15 February 2010 03:07, Sean S. [email protected] wrote:

I tried this:
min_age = params[:min_age]
max_age = params[:max_age]

if max_age.nil?
flash[:notice] = “please enter max age!”

If there is a field called “max_age” on the form, but the user leaves
it blank, you won’t get nil from params, you’ll get an empty string.

So if you check for max_age.blank? instead, you should get the result
you want.

(Running a debugger would help you find this out very easily, or even
just outputting the value of max_age to the console to see if it’s
what you expect it to be…)

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs