0

Google Analytics(分析)内容实验需要使用原始 URL 和变体 URL。在 Rails 中,这是否意味着我们需要创建一个新的路由和控制器动作?或者,我们可以使用相同的操作来根据 URL 参数呈现不同的视图吗?

4

1 回答 1

0

我相信您可以将多条路径路由到相同的操作,例如:

  match 'test_ctrl/test_action_1' => 'test_ctrl#test_action', as: :test_action_1
  match 'test_ctrl/test_action_2' => 'test_ctrl#test_action', as: :test_action_2
  match 'test_ctrl/test_action_3' => 'test_ctrl#test_action', as: :test_action_3

然后在 TestCtrl 控制器中,您可以检查请求数据并根据请求 url 呈现特定视图:

def test_action
  if request.path_info == 'test_ctrl/test_action_1'
    render "/test_action/1"
  elsif request.path_info == 'test_ctrl/test_action_2'
    render "/test_action/2"
  elsif request.path_info == 'test_ctrl/test_action_3'
    render "/test_action/3"
  end
end

只需在 views/test_action/ 中创建视图 1,2 和 3

于 2015-06-03T20:34:15.313 回答