【问题标题】:Select different grails layout for mobile user为移动用户选择不同的 grails 布局
【发布时间】:2012-07-23 09:01:24
【问题描述】:

我有一个 webapp,它将 main.gsp 定义为在所有视图中使用的默认布局,并且我正在使用 spring-mobile 插件在移动视图和桌面视图之间切换。但我现在想在移动用户的 mobile.gsp 布局和 main.gsp 布局之间进行更改。

最好的方法是什么?

【问题讨论】:

  • 如果您有不同的手机视图,为什么不能修改这些视图以使用 mobile.gsp 布局?也许我不明白。
  • 我曾经有完全不同的视图,但我提出的问题是,如果我想使用相同的视图但布局不同怎么办。

标签: grails web-applications mobile


【解决方案1】:

由于您使用的是 Spring Mobile,您可以使用过滤器来拦截控制器调用并设置布局:

class MobileFilters {
    def filters = {
        mobileFilter(controller:'*', action:'*') {
            afterView = {     
               def layout = "main"
               withMobileDevice {
                   layout = "mobile"
               }
               session.layout = layout
           } 
        }
     }
}

然后在你的 gsps 中

<meta name="layout" content="${session.layout}">

【讨论】:

    猜你喜欢
    • 2021-05-03
    • 2020-06-13
    • 2011-11-28
    • 2011-02-05
    • 1970-01-01
    • 2012-08-31
    • 1970-01-01
    • 1970-01-01
    • 2015-02-03
    相关资源
    最近更新 更多