views:

25

answers:

1

When a POST request is processed, params[:id] returns the value of "id" stored in the form that was posted.

However I want to get the value stored in the url (query string).

def some_action
  id = params[:id] # Gets id from here: /some_action?id=[VALUE] only when request.post? is false
  if request.post?
  # Do some stuff, can't get the id value from the url
  ...
end

So how to get the value from the URL in a POST request?

+1  A: 

Hi Alex,

it's the same actually as GET parameters. To prove that, I have a search form that posts one parameter to the same action :

def invite

    if request.post? 

        search= [params[:search]]
        #...

    end
end

And in the view - maybe your problem comes from this

<% form_tag do %>
        <%= text_field_tag :search, params[:search] %>
        <%= submit_tag "Rechercher" %>
<% end %>
Marcel Falliere