0

这里是 Rails 新手。我在 detectmobilebrowsers.com 的 Rails 中获得了一个简短的脚本,用于检查和重定向移动浏览器。看起来像:

def redirect_mobile(url = " http://detectmobilebrowser.com/mobile ") redirect_to url ..... (request.user_agent[0..3]) end

看起来这是一个很大的功能。我应该把它放在典型的 Rails 目录结构(带有控制器、助手、模型子目录 / 组件 / 配置 / 等的应用程序)中的哪个位置,以便当用户访问首页(索引)时,他们将被重定向到某个移动地址?

谢谢!

4

1 回答 1

0

您可以将其设置为before_filter您的ApplicationController. 这个控制器被所有其他控制器继承,所以它的过滤器在每个请求上运行。

在 app/controllers/application_controller.rb 下,

class ApplicationController < ActionController::Base
  before_filter :redirect_mobile

private

  def redirect_mobile(...)
    # ...
  end
end

不过,我强烈建议您修改该脚本以进行更智能的重定向,否则访问http://www.example.com/products/123?color=green的移动用户将被重定向到移动主页,而不是移动产品 123 的版本(绿色!)。

于 2013-08-27T05:45:34.253 回答