如何使用form_for设置操作?

时间:2011-08-12 18:46:15

标签: ruby-on-rails ruby-on-rails-2

我在现有控制器上创建了一个新页面。

我在控制器上添加了2个操作方法:prompt_user和process_feedback。

所以我通过

进入页面
redirect_to :controller => :users, :action => :prompt_user

form_for代码看起来像

<% form_for :user, @user do |f| %>

生成以下html

<form action="users/prompt_user" method="post">

请注意,操作是prompt_user,我想将其设置为process_feedback。我以为我可以用按钮改变动作

<%= submit_tag "Process feedback" %>

但那没用。

所以我的问题是如何将操作更改为process_feedback?

另外,正如你可能会说的那样,我对rails非常陌生,所以如果我做的事特别迟钝,我很想知道它是什么。

2 个答案:

答案 0 :(得分:16)

这是来自记忆,但我认为你可以这样做:

form_for :user, @user, :url => { :action => :prompt_user } do |f|

答案 1 :(得分:1)

或者,使用form_tag语法可以达到相同的目的:

请参阅我对此问题的回答:https://stackoverflow.com/a/37145293/1248725