Ruby on rails 3 在两个视图之间随机化Rails根路径?

Ruby on rails 3 在两个视图之间随机化Rails根路径?,ruby-on-rails-3,rails-routing,Ruby On Rails 3,Rails Routing,是否有一种方法可以在根路径的任意视图之间切换 root :to => 'pages#blue' or root :to => 'pages#red' 感谢您在这方面提供的任何帮助。您可以将lambda作为:的值传递给,因此理论上您可以随机返回两个不同的响应。交换渲染的布局/视图可能是一个更好的主意 编辑 root to: lambda {|env| [ 302, {'Location'=> your_randomizing_code_here }, [] ]} 您可以这样做

是否有一种方法可以在根路径的任意视图之间切换

root :to => 'pages#blue' or root :to => 'pages#red'

感谢您在这方面提供的任何帮助。

您可以将lambda作为
:的值传递给
,因此理论上您可以随机返回两个不同的响应。交换渲染的布局/视图可能是一个更好的主意

编辑

root to: lambda {|env| [ 302, {'Location'=> your_randomizing_code_here }, [] ]}
您可以这样做,或者在控制器中执行类似操作:

class YourRootController < ActionController::Base
  def index
    render some_method_that_returns_your_view_paths_randomly
  end
end
class YourRootController< /代码>您可以考虑使用一些A/B测试GEM。首先,谢谢你的回答。今天我看了一下ABingo,但现有的解决方案似乎更注重在视图中测试副本/文本,而不是干扰路由。感谢您的回答,请提供一个这样的函数的示例。因为我知道需要做什么,但不知道如何安排。