2015-12-23 157 views
0

有没有办法让redirect_to多个网站?目前我在做redirect_to @sale.url,但是我也可以在一个新窗口中同时使用redirect_to :back吗?Rails:redirect_to多于1页

每个解决方案是非常赞赏(即使是那些脏;))

谢谢!

+1

你想redirect_to不同地址在相同的条件? – Sravan

+0

据我所知Rails不允许sereval重定向。 – guyaloni

+0

你可以给上下文吗? –

回答

1

您可以同时重定向到只有1个URL,但是你可以添加一些JavaScript来索引文件,打开你想要的第二窗口,在这里我们也通过URL从同一个控制器,你可以改变的URL到任何你想,甚至本地URL:

# sales_controller.rb 
def create 
    ..... 
    @new_window_url = "http://google.com" 
    redirect_to sales_path 
end 

# sales/index.html.erb 
<javascript> 
    window.open("#{@new_window_url}"); 
</javascript> 
0

这是不可能的redirect_to的不同地址上在相同的条件下同样的动作。

您可将基于codition基础上不同conditions.If, 否则你会得到多个重定向错误。

address = redirect_address1 
if some_condition 
address = redirect_address2 
end 
redirect_to address 
2

导轨(也就是服务器)上的浏览器不能重定向到一个以上的位置:它使一个响应和响应只能是一个东西,不是一下子两回事。

然而,在页面上的JavaScript可以打开一个新标签的位置,轨道可以写,这将在页面加载时运行的JavaScript,或提交表单,例如之前。因此,您可以在提交表单或单击链接时在新选项卡中打开位置,然后让导轨重定向当前选项卡。这将是一件奇怪的事情,通常与可怕的广告弹出窗口相关,比如当你使用一个洪流网站时,它会在你做任何事情时打开赌博/中国妻子的标签。

所以,你可能并不是真的想这样做。如果你解释你想要做的事情,那么有人可能会提出一个更好的方法来解决这个问题。