我有一个小问题让我的用户代理检测工作。每当我在生产上尝试它都不起作用..我在我的应用程序控制器中有这个
before_filter :prepare_for_mobile
private
def mobile_device?
if session[:mobile_param]
session[:mobile_param] == "1"
else
request.user_agent =~ /Mobile|webOS/
end
end
helper_method :mobile_device?
def prepare_for_mobile
session[:mobile_param] = params[:mobile] if params[:mobile]
request.format = :mobile if mobile_device?
end
但是当我处于生产模式时它不起作用..所以我也想知道如何为黑莓andriod,iphone,nokias3,bada和windows os设置用户代理。谢谢
答案 0 :(得分:0)
你可以发布config / environments / production.rb文件的副本吗?
边注: 如果你不想破坏xml或json输出,你可能想要添加这样的东西(使用responds_to块):
def prepare_for_mobile
if request.format == 'text/html'
session[:mobile_param] = params[:mobile] if params[:mobile]
request.format = :mobile if mobile_device?
end
end