shinewang

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            53 隨筆 :: 0 文章 :: 200 評論 :: 0 Trackbacks
          Grails為開發者提供了一個controller列表的默認主頁,在開發時用起來確實很方便,但總不能把它用到產品環境下吧。可是在grails-app/views下面怎么找不到這個文件,也沒有哪個controller和主業相關?實際上這個默認的主頁獨立放在web-app下,文件名是index.gsp。把它修改為:
          <html>
          ????
          <head>
          ????????
          <title>Welcome?to?Grails</title>
          ????
          <meta?name="layout"?content="main"?/>
          ????
          </head>
          ????
          <body>
          ????Hello?World!
          ????
          </body>
          </html>

          刷新后主頁變成了Hello World!

          好了,本文結束,接下來的工作就是你的了。慢著,如果不想重新編寫一個主頁,而是想把它重定向到一個controller怎么辦?

          Grails是建立在Java的基礎之上的,在Grails項目中我們可以很方便的使用Java的各種技術,包括JSP。現在把index.gsp重新命名為index.jsp,內容改為<% response.sendRedirect("yourController/yourAction"); %>,刷新后主頁就重定向到了你定義的路徑。

          事實上GSP是JSP的擴展,這意味著你同樣可以在GSP中使用session、servletContext,、request和response對象。把index.jsp重新改回index.gsp,內容改為${response.sendRedirect("yourController/yourAction")}同樣可以達到重定向效果。

          還可以自定義一個Tag來實現重定向:

          def?redirectPage={attrs->
          ??
          def?url=attrs.get('url')
          ??response.sendRedirect(
          "${request.contextPath}"+url)
          }

          最后介紹最簡單的解決方法:
          打開grails-app/conf/UrlMappings.groovy,這是Grails中URL映射的配置文件,相當于Rails中的routes.rb
          把它作如下修改即可:
          class?UrlMappings?{
          ????static?mappings?
          =?{
          ??????
          "/"(controller:"yourController",action:"yourAction")
          ??????
          "/$controller/$action?/$id?"{
          ??????????constraints?{
          ??????????
          //?apply?constraints?here
          ??????????}
          ???????}
          ????}
          }
          posted on 2008-11-27 12:48 shinewang 閱讀(2481) 評論(0)  編輯  收藏 所屬分類: Groovy & Grails
          主站蜘蛛池模板: 延长县| 星座| 平山县| 永昌县| 伊川县| 奉节县| 灌阳县| 平乐县| 孟州市| 永嘉县| 台安县| 南郑县| 马山县| 永吉县| 安顺市| 阳谷县| 安国市| 南召县| 台东县| 修水县| 安多县| 北川| 绍兴县| 琼海市| 乌鲁木齐市| 庆云县| 西畴县| 比如县| 潼南县| 边坝县| 资中县| 合山市| 秭归县| 靖安县| 高唐县| 黑山县| 万山特区| 三台县| 沭阳县| 抚顺县| 江达县|