我收到此错误:
No route matches {:action=>"show", :controller=>"password_reset"}
如果我使用以下方式从我的观看中调用表单,则会发生
# views/password_reset/new.html.erb
<%= form_tag password_reset_path, :method => :post do %>
但是 如果我将其更改为此问题就会消失:
<%= form_tag :controller => :password_reset, :action => :create, :method => :post do %>
有人可以告诉我为什么会这样吗?使用post方法的password_reset_path不是使用rails提交REST表单的正确方法吗?
如果你好奇的是我的控制器和路线文件
# controllers/password_reset_controller.rb
def create
@user = User.find_by_email(params[:email])
@user.deliver_reset_password_instructions! if @user
end
# config/routes.rb
resources :password_reset