Rails检测移动设备的方式?

是否有“轨道方式”来检测用户是否正在使用移动设备? 我的意思是我可以在erb中使用的方法,如下所示:

 

您可以通过定义如下函数来实现这一目的:

 def mobile_device? if session[:mobile_param] session[:mobile_param] == "1" else request.user_agent =~ /Mobile|webOS/ end end 

或者您可以使用gem来检测移动设备

使用浏览器 gem。 您可以通过自定义user_agent检测浏览器。

application_helper.rb

 def mobile_device agent = request.user_agent return "tablet" if agent =~ /(tablet|ipad)|(android(?!.*mobile))/i return "mobile" if agent =~ /Mobile/ return "desktop" end 

然后你可以在你的视图中使用它:

 <% if mobile_device == "mobile" %> Show something for mobile users. <% end %> 

你也可以通过在application.html.erb头标记上包含 解决这个问题。

只要您的网站响应(例如使用Bootstrap),您应该没问题。