【发布时间】:2013-12-08 12:08:36
【问题描述】:
我正在使用 rails(3.0.9) 并在我的应用程序中设计了具有超时功能的 1.4.8。 在正常的 Http 请求中,每件事都按预期工作。 如果用户在超时时点击 ajax 链接,他们会通过以下配置重定向到 /users/sign_in.js
initializers/devise.rb
config.http_authenticatable_on_xhr = false
config.navigational_formats = ["*/*", :html, :js]
在 js 文件中,我使用 location.reload(); 重新加载了当前页面;这将按预期重定向到登录页面
users/sign_in.js
location.reload()
问题:
登录后,设计重定向到最后请求的 url 在这种情况下是 ajax url 但我应该重定向到发送 ajax 请求的 html 页面。
请帮我解决这个问题。
【问题讨论】:
-
如果我是正确的,你的问题是你的页面
/1并且发生超时并且用户点击/2ajax 请求,登录后你希望用户重定向到/1我是否正确 -
@Viren 是的,你是对的。
-
你可以使用 sign.js.erb 并且可以在 location.reload() 语句之前设置
session[:user_return_to]= referrer path。仅供参考,您需要设置 js.erb -
@Viren 感谢您的宝贵回复。