我得到了params.user
返回列表。
前任:
params.user = 10 20
然后我用
params.user.each { id ->
}
然后 id 有值:
id = 10, id = 20
当
params.user
只返回 10
, 遍历它我得到 1
和 0
.所以我的想法是计算
length()
的 params.user
并提出条件if (params.user == 1){
//to do something
}
但是当我使用
params.user.length()
,它返回 2,我需要它返回 1。请帮忙
最佳答案
当您想使用保留的参数映射时,您实际上使用了一个映射。然后当然,当您执行 params.myParams.length() 时,您将获得 String 值的长度。
但是 Grails 提供了从参数映射中获取数据的工具。对于列表使用:
List myList = params.list('user')
Grails 提供了其他方法来获取其他类型的数据:
def intValue = params.int('paramInt')
def shortValue = params.short('paramShort')
def byteValue = params.byte('paramByte')
def longValue = params.long('paramLong')
def doubleValue = params.double('paramDouble')
def floatValue = params.float('paramFloat')
def booleanValue = params.boolean('paramBoolean')
最后但同样重要的是,如果您有复杂的数据要绑定(bind),不要忘记使用命令对象;)
关于Grails计算字符串的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23234782/