Routes 如何使用控制器中的方法将rubyonrails链接到

Routes 如何使用控制器中的方法将rubyonrails链接到,routes,ruby-on-rails-3.2,ruby-1.9.3,Routes,Ruby On Rails 3.2,Ruby 1.9.3,我使用bcrypt ruby进行密码加密。在gem的文档中,他们给出了一个允许某人重置密码的操作。我正在努力实施这一行动 我在登录页面上添加了以下代码: <p>Forgot your Password? <%= link_to "Click to reset your password", forgot_password_session_path, confirm: "Do you really want to reset your password?" %></p

我使用bcrypt ruby进行密码加密。在gem的文档中,他们给出了一个允许某人重置密码的操作。我正在努力实施这一行动

我在登录页面上添加了以下代码:

<p>Forgot your Password? <%= link_to "Click to reset your password", forgot_password_session_path, confirm: "Do you really want to reset your password?" %></p> 
以下是config/routes.db中的定义:

resources :sessions do
  member do
    get "forgot_password"
  end
end
以下是rake路由的输出:

forgot_password_session GET    /sessions/:id/forgot_password(.:format) sessions#forgot_password
当我尝试单击登录链接上的链接时,出现以下错误:

没有路由匹配{:操作=>“忘记密码”,:控制器=>“会话”}

我不知道它怎么说没有路线匹配,当它看起来匹配的时候。我已经重新启动了rails服务器&spork,但仍然收到错误。我不知道下一步该怎么办

任何帮助都将不胜感激

更新日期:2012年5月26日上午9:14 GMT-6:00:

我改为POST,重新启动了rails服务器&Spork。我也犯了同样的错误。这是我在服务器上的日志:

在2012-05-26 09:13:36-0500开始获取127.0.0.1的“登录” SessionController处理#新为HTML 布局/应用程序中的渲染会话/new.html.erb(112.4ms) 在116ms内完成500个内部服务器错误

以下是rake路由信息:

forgot_password_session POST   /sessions/:id/forgot_password(.:format) sessions#forgot_password

它可能需要是一个POST请求。当我参加rails课程时,内联链接调用并不一致。出现该错误的原因是路由文件配置为GET,而不是POST。只是黑暗中的一个镜头,但尝试添加相同的行,但有一个帖子。

我再次尝试,但没有成功。我用更多信息更新了我的描述。看起来需要更多的代码,或者可能需要更改某个地方的设置。我又看了一眼rakeroutes语句。它看起来像是在寻找会话/id/U密码路径。我在登录页面上有链接。由于尚未单击登录按钮,因此此时没有会话id。我将把程序移动到application_controller.rb,并将电子邮件或用户名传递给它,然后重试。我将发布一个更新我的结果。对不起,它没有帮助。。。有疑问的时候!?我真的不知道,对不起,没问题。我将在另一个时间重新讨论这个问题。我有一些更多的任务,我将尝试这个项目。至少我正在获得更多的知识。非常感谢。
forgot_password_session POST   /sessions/:id/forgot_password(.:format) sessions#forgot_password