2016-03-17 38 views
-1

我正在創建基於休息的Web應用程序。我希望所有其餘的基於頁面(HTML頁面)應該進入webapps文件夾,並應該從那裏訪問以下URL http://localhost:8080/myapp在不同的子URL上呈現grails視圖

上面的URL應該呈現index.html位於webapps文件夾。所有後續頁面只能從webapps文件夾打開。

因爲我想用Grails的意見(GSP),他們應該可以訪問在 http://localhost:8080/myapp/admin

上述網址應該呈現躺在的grails-app /視圖/ index.gsp中的index.gsp中頁面管理部分。

要列出管理網站的所有用戶,我想URL是這樣 http://localhost:8080/myapp/admin/user/list一些事情,這應該指向的grails-app /視圖/用戶/的list.gsp和UserController中與動作列表

有這可以在Grails中實現

+0

您使用的是哪個版本的grails? 「基於頁面的休息」意味着帶有js的html頁面? _/myapp_ url下的網頁結構是什麼?你有「管理員部分」的任何控制器,或者你只使用gsp頁面進行基本模板?請添加更多和具體的信息給你的問題。現在太普通了。 – lifeisfoo

+0

Grails版本:2.5.1 是基於rest的頁面是指內含JS的html頁面。 我確實有管理員部分的控制器 對於域用戶,我有UserController及其在grails-app/views/user /中的相應視圖... 我希望此頁面在https:// localhost:8080/myapp/admin/user/... 基本上我希望在/ myapp/admin 和所有其他頁面(存在於webapps中)以及在http:// localhost:8080/MYAPP / –

回答

1

默認情況下,Grails會使用約定公開您的控制器和視圖。但是,如果你想打破這個慣例,你可以。沒有什麼能夠阻止您重新處理應用程序中的URL映射。實際上有一個entire section of the documentation致力於它。

讓我們假設你想所有的控制器是/admin/下的第二,你可以很容易地改變你的UrlMappings.groovy看起來像這樣:

class UrlMappings { 
    static mappings = { 
    "/admin/$controller/$action?/$id?(.$format)?"{ 
      constraints { 
       // apply constraints here 
      } 
     } 
} 

一旦你通過文檔閱讀,你應該能夠然而映射的東西你要。關鍵是你必須定義你想要他們如何映射。