加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 在移动设备上使用备用Rails布局,但视图相同

发布时间:2020-12-16 19:28:31 所属栏目:百科 来源:网络整理
导读:我一直在 Mobile Devices railscast中使用相同的策略,在移动浏览器中为我的网站提供备用布局. 检测到移动浏览器时,request.format设置为:mobile,我将其定义为mime类型. 我为移动设备创建了一个新的布局. 如果我提供移动视图(例如show.mobile.haml),移动视图
我一直在 Mobile Devices railscast中使用相同的策略,在移动浏览器中为我的网站提供备用布局.

检测到移动浏览器时,request.format设置为:mobile,我将其定义为mime类型.
我为移动设备创建了一个新的布局.
如果我提供移动视图(例如show.mobile.haml),移动视图和布局都会在移动设备上使用,一切都很有效.

问题是,我不想创建全新的视图,它只是我想要改变的布局.如果我没有创建适当命名的视图,则永远不会使用移动布局.因此,我只能设法在移动设备上同时更改或不更改.

我在这里想念的是什么?当我有移动用户时,如何让rails换掉布局?

解决方法

假设你已经添加了mobile_device?来自railscasts的方法然后只需将以下内容添加到application_controller.rb:
layout :which_layout
  def which_layout
    mobile_device? ? 'mobile' : 'application'
  end

请务必在app / views / layouts中创建mobile.html.erb文件

由于您要呈现相同的视图,因此不必担心设置request.format.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读