How to pass a parameter to controller action from view in rails through link_to helper

StackOverflow https://stackoverflow.com/questions/19770052

  •  03-07-2022
  •  | 
  •  

Pergunta

<%= link_to "Connect", {controller:"home", action:"connectTo"}, id: "btny" %>

This is my link_to helper in view.

I want to attach a parameter in this link_to tag so that I can get it in the action connectTo. I'm unable to find correct syntax or way to do it, and unable to understand some answers I found on stackoverflow. How can I achieve this?

def connectTo 
  #here i want to get the parameter i pass from link_to from view...
end
Foi útil?

Solução

  1. Do not use camel case in variable names and method names in Rails. That's not a convention and will bite you later.

  2. Use named path when you can, instead of manually assign controller and action.

For your question, suppose your named path is home_connect_to_path, then

link_to "Connect", home_connect_to_path(foo_param: 'bar_value')

The link will look like

http://localhost:3000/home/connect_to?foo_parms=bar_value

Then get it in controller

def connect_to
  foo = params[:foo_param] # 'bar_value'
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top