[英]rails authlogic gem - destroy action error in UserSessionsController
我正在使用Authlogic gem作为Rails应用程序的身份验证系统。 这是我在UserSessionsController中的代码
class UserSessionsController < ApplicationController
layout 'auth_layout'
def new
@user_session = UserSession.new
end
def create
@user_session = UserSession.new(params[:user_session])
if @user_session.save
flash[:notice] = "Login successful!"
else
render :action => :new
end
end
def destroy
current_user_session.destroy
redirect_to new_user_session_url
end
end
尽管每次我在地址栏中输入/ user_sessions / destroy时,都会出现以下错误:
Unknown action
The action 'show' could not be found for UserSessionsController
有谁知道如何解决这个问题? 谢谢 :)
将以下内容添加到您的config/routes.rb
match "user_sessions/destroy" => "user_sessions#destroy", via: [:get]
假设您在config/routes.rb
user_session
路由定义为resource
, destroy
操作的路由要求将HTTP方法DELETE
到/user_sessions
,并通过GET
请求(不存在) /user_sessions/destroy
路由浏览器的地址栏失败。
上面的路由的添加映射了您试图访问以加载UserSessions
控制器的destroy
方法而不是(不存在的) show
方法的/user_sessions/destroy
路径,并将"destroy"
作为:id
参数传递。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.