Ruby on rails 3 Rails 3.2.1使用两种可能的答案登录:js或html

Ruby on rails 3 Rails 3.2.1使用两种可能的答案登录:js或html,ruby-on-rails-3,Ruby On Rails 3,我有一个使用Ajax发送登录信息的登录表单 如果登录错误,我会发送一个.js,它会显示一些警告并晃动表单 如果登录成功,我只想重定向整个页面 Rails控制器总是期望一个.js调用,实际上在这两种情况下,我都会发送一个.js回复,因为Rails中的重定向将进入浏览器期望的一些.js回复 login wrong: $("#login").effect("shake", { times:2 , distance:10},20); login successfull: window.locatio

我有一个使用Ajax发送登录信息的登录表单

如果登录错误,我会发送一个.js,它会显示一些警告并晃动表单

如果登录成功,我只想重定向整个页面

Rails控制器总是期望一个.js调用,实际上在这两种情况下,我都会发送一个.js回复,因为Rails中的重定向将进入浏览器期望的一些.js回复

login wrong:
$("#login").effect("shake", { times:2 , distance:10},20);


login successfull:
window.location.replace("<%=root_url(:only_path => false)%>enterprises/");
登录错误:
$(“#登录”).effect(“抖动”,{times:2,distance:10},20);
登录成功:
window.location.replace(“假)%>enterprises/”;
问题是,这是一个好方法(我个人不喜欢,但它是有效的)还是更好的处理方法


谢谢,

我认为这是一个很好的解决方案。也许我会修复url,以防成功地依赖于助手,而不是硬编码的路径,但这是一件小事


如果用户在浏览器中禁用了javascript,那么在这两个操作上都添加一个.html视图可能会更好。

此解决方案有什么问题?我认为这是一个很好的方法。目前我没有任何问题,但我在问这是否是一个更好的方法…我有额外的.html视图,但这个网站是一个内部项目的ERP,所以我们只有特定的用户使用特定的浏览器。