rails 3.1设计确认

tom*_*opp 1 authentication ruby-on-rails devise ruby-on-rails-3

我已经设置了rails with devise但是当我将可确认模块添加到我的应用程序时,我无法使我的身份验证工作.我在我的用户模型中包含了可确认模块,并在我的迁移文件中包含了未注释的确认和add_index确认令牌.回滚数据库并重新评论这些数据后,身份验证按指定的方式工作.

我已经检查过,我无法退出应用程序,即使我已经提供<%=链接到"注销",destroy_user_session_path%>我的应用程序收到路由错误,没有路由匹配[GET]用户/ sign_out .当我运行rake路线时,我可以使用这条路线

destroy_user_session DELETE /users/sign_out(.:format)      {:action=>"destroy", :controller=>"devise/sessions"}  
Run Code Online (Sandbox Code Playgroud)

And*_*i S 5

不确定可确认部分,但我可以告诉你,你正在使用的链接是调用GET方法.如您所见,要注销,您需要在链接中使用DELETE方法,如下所示:

<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
Run Code Online (Sandbox Code Playgroud)

如果您想特别使用GET进行注销,请查看设计初始化文件; 在底部的某个地方,您会看到有关退出和默认方法的信息:delete.把这条线放在那里:

config.sign_out_via = :get
Run Code Online (Sandbox Code Playgroud)