如何使Devise的authenticate_user方法返回js.erb视图

时间:2013-06-24 22:09:02

标签: ruby-on-rails devise

所以我有一个Rails 3.2应用程序,它通过jquery-ujs显示一个Devise登录页面。在application.html.erb中我有:

<%= link_to "Login", new_user_session_path, :remote => true %>

调用/ views / devise / sessions / new.js.erb ,包含一些在现有页面上显示一个漂亮的模态登录表单的JS。 一切正常,但在我的控制器中,我有:

before_filter :authenticate_user!, except: [:index, :show]

将调用new / edit / update / destroy操作的用户重定向到/ views / devise / sessions / new.html.erb 。 即使使用以下方式调用相关操作,也会发生这种情况:remote =&gt;从视角来看是真实的。

我如何更改:authenticate_user!返回new.js.erb而不是重定向到.html.erb版本?

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

我可以在生成devise:views后创建* .js.erb模板,但是在设计版本2.1.2中我无法在其他版本中创建它。