# Passing more than one parameters to redirect\_to

**URL:** <https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660>\
**Category:** Rails\
**Created:** [October 24, 2008, 3:53am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660 "2008-10-24T03:53:12Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [October 24, 2008, 3:53am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/1 "2008-10-24T03:53:12Z")

</div>

Hi,

I am getting some error which I am clue less. I try to pass more than  
one parameter with redirect\_to, For example,

My params are…  
search =\> {“name”=\>"", “bus\_group”=\>“1”, “region”=\>"", “unapproved”=\>"",  
“tech\_owner”=\>""}

And I try to give.

redirect\_to params[:search].merge! (:action =\> ‘list’)

After executing this if I see in log file its showing like

{“bus\_group”=\>nil, “name”=\>"", “amp;region”=\>nil, “amp;tech\_owner”=\>nil,  
“region”=\>"", “amp”=\>"", “action”=\>“list”, “amp;name”=\>nil,  
“controller”=\>“tech\_projects”, “amp;unapproved”=\>nil, “unapproved”=\>"",  
“tech\_owner”=\>""}

I am confused why this “amp;” generally “&” will be parameter separator  
but one parameter itself called “amp;”.also every params are available  
twice.

---

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [October 24, 2008, 4:45am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/2 "2008-10-24T04:45:55Z")

</div>

Is there any other solution to solve this situation??

Selva R. wrote:

> Hi,

> My params are…  
> search =\> {“name”=\>"", “bus\_group”=\>“1”, “region”=\>"", “unapproved”=\>"",  
> “tech\_owner”=\>""}

> redirect\_to params[:search].merge! (:action =\> ‘list’)

> {“bus\_group”=\>nil, “name”=\>"", “amp;region”=\>nil, “amp;tech\_owner”=\>nil,  
> “region”=\>"", “amp”=\>"", “action”=\>“list”, “amp;name”=\>nil,  
> “controller”=\>“tech\_projects”, “amp;unapproved”=\>nil, “unapproved”=\>"",  
> “tech\_owner”=\>""}

---

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [October 24, 2008, 5:04pm UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/3 "2008-10-24T17:04:27Z")

</div>

Selva R. wrote:

> but one parameter itself called “amp;”.also every params are available  
> twice.

Mmmm, try redirect\_to {:action =\> :list}.update(params[:search])

–  
Rails Wheels - Find Plugins, List & Sell Plugins -  
[http://railswheels.com](http://railswheels.com)

---

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [October 27, 2008, 8:43am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/4 "2008-10-27T08:43:53Z")

</div>

I use something like this to pass extra params on restful routes.  
Notice the extra params inside the {}.

redirect\_to user\_path(@user, {:params1 =\> 1, :params2 =\> 2})

Hope it helps,

Elioncho

On Oct 27, 2:29 am, Selva R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [October 27, 2008, 8:29am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/5 "2008-10-27T08:29:42Z")

</div>

Thanks James,

But its not working, I am using redirect\_to in rjs.

If I use “update”, that RJS itself not working.

Regards  
Selvaraj.S

Mark Reginald J. wrote:

> Selva R. wrote:
> 
> > but one parameter itself called “amp;”.also every params are available  
> > twice.
> 
> Mmmm, try redirect\_to {:action =\> :list}.update(params[:search])
> 
> –  
> Rails Wheels - Find Plugins, List & Sell Plugins -  
> [http://railswheels.com](http://railswheels.com)

---

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [November 13, 2009, 11:09am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/6 "2009-11-13T11:09:44Z")

</div>

nas wrote:

> Whenever you pass more than one parameter in an rjs using redirect\_to  
> then it always adds & in the beginning of parameters after the  
> first one. I had this issue as well in the past and after spending  
> hours to fix it, I ended up using only redirect\_to instead of  
> redirect\_to from rjs (basically I couldn’t sort it out).
> 
> My guess is that, & is added by prototype somehow.

Try using:  
:escape =\> false

as an additinal Parameter.

---

<div class="post-metadata">

**Author:** ![selva\_rails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e0b2c6/32.png) [@selva\_rails](https://www.ruby-forum.com/u/selva_rails)\
**Post date:** [October 27, 2008, 11:49am UTC](https://www.ruby-forum.com/t/passing-more-than-one-parameters-to-redirect-to/151660/7 "2008-10-27T11:49:11Z")

</div>

Whenever you pass more than one parameter in an rjs using redirect\_to  
then it always adds & in the beginning of parameters after the  
first one. I had this issue as well in the past and after spending  
hours to fix it, I ended up using only redirect\_to instead of  
redirect\_to from rjs (basically I couldn’t sort it out).

My guess is that, & is added by prototype somehow.
