- 创建create-controller say3
- 生成
Created file grails-app/controllers/hello_world/Say3Controller.groovy
Created file grails-app/views/say3
Created file test/unit/hello_world/Say3ControllerSpec.groovy - 编写
grails-app/controllers/hello_world/Say3Controller.groovy
,最简单:render("hello world hello Grails")
,函数名为index,访问的时候目录为项目名/say3/index - 较为复杂的控制器:
create-controller say2
def say2={//将index改为了say2,可以不改 return [text1:'world', text2:'Grails']}
同时在grails-app/views/say2下创建say2.gsp,,与所改函数的名保持一致。
内容如下:
<html>
<head>
<title>hello</title>
</head>
<body>
hello ${text1}! Hello ${text2}!
</body>
</html>
- 另一种复杂的控制器:
def index() { return [text1:"使用index()",text2:"不知道能不能行"]}
在view中该控制器下创建index.gsp
内容如下:
<html>
<head>
<title>hello</title>
</head>
<body>
啦啦啦 ${text1}! 你好,hello ${text2}!
</body>
</html>
目前有了三种使用控制器的形式
控制器的理解可以归结为三个 R:return、redirect 和 render。有些动作利用隐式的 return 语句将数据返回到具有相同名称的 GSP 页面。有些动作进行重定向。