From: William James Date: 2007-01-22T19:40:04+09:00 Subject: Re: conditional variable assignment from array Josselin wrote: > one of my methods receives a sort parameter either as > > params => {"sort"=>{"criteria"=>"1"} } > OR > params => {"sort"=>"1"} > > presently, I assign a variable @sc as follows : > > params[:sort].nil? ? @sc = "1" : @sc = params[:sort][:criteria] > > how can I assign @sc to params[:sort][:criteria] OR params[:sort] > whatever received... ? > > tfyh > > joss h = {"sort"=>{"criteria"=>{"criterion"=>{"foo"=>"1"}}}} # Get the innermost value. while (h = h.to_a.flatten.last).class == Hash do end p h