我正在使用 Devise gem,它提供了“忘记密码”表格和“重新发送确认”表格。两者都包含一个电子邮件输入字段和一个提交按钮。我想将这两种形式合二为一,这样就只有一个电子邮件字段和两个提交按钮。根据是否按下“重置密码”或“重新发送确认”按钮,表单将提交给相关操作。
更新: 基本上,我想要这两种形式:
<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.submit "Send me reset password instructions" %></div>
<% end %>
<%= form_for(resource, :as => resource_name, :url => confirmation_path(resource_name), :html => { :method => :post }) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.submit "Resend confirmation instructions" %></div>
<% end %>
共享 f.label :email 输入,但发布到按下按钮的操作。例如,当我按下按钮时,该:email
值将被提交,当我按下 f.submit “向我发送重置密码说明”时,该值将被发布到.confirmation_path
"Resend confirmation instructions"
:email
password_path(resource_name)