从JavaScript端路由到页面

时间:2013-08-15 19:30:50

标签: ruby-on-rails ruby-on-rails-3.2

目前我这样做:

+    var go_to = "http://localhost:3000" + url; 
+    window.open(go_to);

将其带到Rail控制器的Index操作并最终显示页面。

我想改进的两件事: 1-绝对硬编码"http://localhost:3000"是错误的。但是正确的方法是什么?

2-是否有更好的方式与JS方面的Rails交谈以打开一个新窗口?

1 个答案:

答案 0 :(得分:1)

要转到Web根目录,请使用:

    window.location = '/';

您也可以为任何其他页面执行此操作,例如:

    window.location = '/about/';

使用'/'启动目的地将更改您网站/当前域中的网页。所以在本地它将是localhost:3000/但是当它在服务器上运行时,它将转到http://www.mydomain.com/

此外,如果您正在寻找一种更好的方式来与您的应用程序中的rails url对话,您可以使用routes变量。在您的控制台中运行rake routes,它将列出您拥有的所有路线。因此,变量root_path将返回/或您的应用中可以设置的根路径。

    <%= link_to "Home", root_path, target: '_blank' %>
相关问题