【发布时间】:2013-06-18 18:20:04
【问题描述】:
在 Grails 中,控制器中的操作应该有一个匹配的 GSP 文件。例如,控制器中的操作list() 将呈现list.gsp。
无论如何我们可以跳过这个吗?假设我想要我的操作:writetoaFile() 只生成一个由客户端浏览器下载的文本文件,然后不呈现视图。
我已经尝试过return、return null 和return false,但都没有成功。我的代码如下:
def writetoaFile(){
response.setContentType("text/plain")
response.setHeader("Content-disposition", "attachment; filename=test.txt")
response <<"Hello World"
return
}
writetoafile.gsp的代码:
Hey There. This is a gsp file.
现在我的应用程序成功地将“Hello World”写入文件 test.txt,但它也将 writetoafile.gsp 写入文本文件 test.txt。
所以我的 test.txt 包含:
Hello World
Hey There. This is a gsp file.
我想跳过视图。我试过了:
returnreturn nullreturn falseresponse.setContentType("text/plain")response.setContentType("")
【问题讨论】:
-
您不必拥有与每个控制器方法关联的视图。你总是可以(作为控制器的最后一行)做:渲染“一些文本”甚至渲染“”
标签: grails