使用rails 3和remote => true进行设计

23t*_*tux 8 javascript jquery ruby-on-rails devise

我在使用AJAX登录设计时遇到问题.我正在使用:remote => truejavascript助手的选项和jQuery版本(https://github.com/rails/jquery-ujs).用户输入正确的信息后,会在会话视图中呈现我的create.js.erb.这没关系,因为我可以在这个文件中使用JS重定向我的用户.但是当发生错误时,例如用户输入错误信息时,只有闪存消息在响应中并带有错误代码401 - Unauthorized.因此,不会呈现视图或create.js.erb或其他.但是我想通过在侧面显示它来处理这个消息,以便用户获得一些反馈,但是错误.

我还尝试用自己的自定义控制器实现respond_to :js,并使用:recallwarden身份验证的方法.但它不起作用.

有没有人知道解决这个问题的一些最佳实践?或者我应该避免使用这种帮助方法,只使用纯jQuery进行ajax调用?

thx,tux

Bra*_*ker 9

你可以在rails 3中使用jQuery事件"ajax:error".只需将事件绑定到表单即可.

jQuery(function($) {
  $("#new_model").bind("ajax:error", function(event, data, status, xhr) {
    alert("something went wrong");
  });
});
Run Code Online (Sandbox Code Playgroud)

请查看此博客文章,了解有关可用事件的更多详细信息.