10

So..

<%= submit_tag 'Save', :name => 'save' %>
<%= submit_tag 'Save to Library', :name => 'library' %>

then in my controller:

with_action do |a|
    a.save do

    end

    a.library do

    end
end

the problem is that only one of the actions is getting invoked... the same one for both submit_tags... any idea why?

or how I can get two buttons to submit a form to two different methods?

0

1 Answer 1

18

The submit button name attribute is passed to the controller as params[:commit]. So in your case:

if params[:commit] == "save"
end
Sign up to request clarification or add additional context in comments.

6 Comments

I did a puts params, and there isn't a :commit key in the params hash... =\
What does the params hash contain?
When I use :name there is no :commit. wehn i don't use :name, the :commit is the text of the button
Then use the name instead of :commit.
Also see stackoverflow.com/questions/17916316/… if you want to pass a specific param to the controller depending on which button was clicked.
|

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.