すべてのビューで使用されるデフォルト レイアウトとして main.gsp を定義する webapp があり、Spring-Mobile プラグインを使用してモバイル ビューとデスクトップ ビューを切り替えています。しかし、モバイル ユーザー向けに mobile.gsp レイアウトと main.gsp レイアウトを変更したいと考えています。
これを行う最善の方法は何ですか?
すべてのビューで使用されるデフォルト レイアウトとして main.gsp を定義する webapp があり、Spring-Mobile プラグインを使用してモバイル ビューとデスクトップ ビューを切り替えています。しかし、モバイル ユーザー向けに mobile.gsp レイアウトと main.gsp レイアウトを変更したいと考えています。
これを行う最善の方法は何ですか?
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}">