問題:控制器的操作具有渲染標記而不傳入模型。存在以「get」開頭的動作。在'Grails'控制器的操作中使用'get'會導致即使未調用操作也會執行操作
的grails-app /視圖/站點/ home.gsp:
homepage
SiteController.groovy:
class SiteController {
def index() {
render (view: "home")
}
def getTest() {
render "getTest"
}
}
該網站是在本地主機訪問:8080 /站點執行的索引作用SiteController。
預期輸出:主頁 實際輸出:getTest主頁
如果索引的呈現動作被改變爲這樣的:
render(view: "home", model: [:])
預期的輸出被產生。
如果輸入的字符單詞前加上獲得的動作名稱,預期的輸出效果。
有趣的是,getTest()是顏色編碼爲紫色IDEA。還應該注意的是,如果你在開始時有多個get單詞的方法,它們都會被執行。
這在Grails 1.3.6中沒有發生。這可以在全新的Grails 2.2.2項目中重現,並且對我來說似乎是一個錯誤。這是爲什麼發生?