如果我们有一个控制器,让我们称之为文档,它有两个方法,一个上传文件,另一个显示上传文件。 我想在upload方法中定义一个新字符串,用于检查文件的大小并在该字符串中存储特定的类型名称。
但是我想在另一个方法中访问该字符串,该方法是能够显示它的list方法。
这是我的代码:
Class DocumentController {
def list() {
//Here I would like to access that String to show it on the page
[fileSizeType: fileSizeType]
}
def upload {
//define the new String variable
String fileSizeType = ""
if(fileSize < 1000) {
fileSizeType = "type1.."
} else {
fileSizeType = "type2.."
}
}
}
在gsp页面中,我想以这种方式访问字符串:
<td><g:link>\${fileSizeType}</g:link></td>
我在尝试上面的代码时收到此错误:
No such property: fileSizeType for class: file_down.DocumentController
答案 0 :(得分:1)
您需要在参数中传递参数时重定向到列表操作。
def upload() {
// simplify with ternary expression
def fileSizeType = (fileSize < 1000) ? "type1.." : "type2.."
redirect action:'list', params:[fileSizeType: fileSizeType]
}
// in your list action
def list() {
[fileSizeType: params.fileSizeType]
}