grails - 在Grails中获得值(value)

标签 grails groovy gorm

def bid= Book.findAllBy(params.bname)

println(bid.id)

我得到了结果[58]
我如何只获取没有报价的值?

以及如何将“出价”转换为整数?

最佳答案

findAllBy的返回值是一个列表。在您的情况下,该列表仅包含一个Book实例。

在列表上使用属性运算符将创建一个具有所有列表元素的相应属性的新列表。因此,bid.id创建一个以整数58作为单个元素的列表。列表对象的toString()方法将其打印为[58]。为了获得整数值,您应该调用bid[0].id(尽管bid.id[0]-更浪费-在这种情况下也可以使用)。

或者,您可以调用Book.findBy(params.bname).idfindBy方法仅返回一个实例。

关于grails - 在Grails中获得值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8023035/

相关文章:

javascript - 必须在 HTML 中手动定义日期选择器的数量

grails - 将Grails 2.X迁移到3.X-什么是配置文件?

grails - 如果提交表单标签是 uploadForm,为什么 Controller 中的更新方法不起作用

java - Groovy 类的 XML 序列化

groovy - Spock 单元测试和内部封闭

multithreading - Grails:如何在异步Web请求后将对象保存到DB?

hibernate - 如何在不锁定所有表的情况下进行保存

java - Java 类中的 Grails @Autowire 不起作用

groovy - 在 Groovy 脚本中导入内部枚举

hibernate - GORM删除操作:找到相同集合的两个表示