我有一些维护Grails应用程序的经验;现在创建一个“任务管理”应用程序作为练习。GSP与Grails中的控制器
显然有的Groovy Server Pages的视图二分法与Controller actions用于呈现一个视图,如从URLMappings.groovy
例子证明这个片段:
static mappings = {
// ..
"/" (view:'/index')
"/login/$action?" (controller: 'login')
"/logout/$action?" (controller: 'logout')
"500" (view:'/error')
}
其中面向用户的URL必须被映射到视图(GSP的)或控制器渲染视图,例如:
class LoginController {
/**
* Show the login page.
*/
def auth = {
// .. auth logic
String view = 'auth'
String postUrl = "${request.contextPath}${config.apf.filterProcessesUrl}"
render view: view, model: [postUrl: postUrl, rememberMeParameter: config.rememberMe.parameter]
}
}
从设计的角度来看,我该如何选择使用哪种方法?何时使用GSP/taglib创建视图,如输出HTML的典型服务器页面,以及何时将URL映射到通过委托GSP呈现的控制器?我可以结合两种方法吗?我是否过分简化了这里的选项?
非常有帮助。你认为标签库应该扮演什么样的角色? – paislee
标记库适用于连接到视图的任何逻辑,例如循环元素或切换某些内容的可见性。每当你想把代码直接放到你的GSP中时,它可能应该放在标签库中。当然,一次性总是有例外。也许我会添加到上面的答案... – OverZealous