【发布时间】:2010-12-04 21:42:55
【问题描述】:
我正在使用 AuthLogic 对我的 rails 应用程序中的用户进行身份验证。该部分已正确设置并正常工作。
我定义了以下路线:
map.login '/account/login', :controller => :user_sessions, :action => :new
调用 rake 路由返回我期望的结果:
login /account/login {:controller=>"user_sessions", :action=>"new"}
当有人提交登录时,它会调用 UserSessionsController.create:
def create
@user_session = UserSession.new(params[:user_session])
if @user_session.save
flash[:notice] = "Login successful!"
redirect_back_or_default account_url
else
render :action => :new
end
end
如果@user_session.save 失败,屏幕上会出现相应的错误消息。但是,浏览器 URL 也会更改为“http://localhost:3000/user_session”,而不是停留在“http://localhost:3000/account/login”。
我认为问题在于我提供给渲染方法的内容。我应该喂它什么?
【问题讨论】:
标签: ruby-on-rails controller routes authlogic