将[hasMany:]引用的数据类型更改为列表?

时间:2011-03-21 14:52:01

标签: grails groovy gorm

有没有办法更改grails中static hasMany = [myList: Stuff]定义的数据类型?我试过了

List<Stuff> myList
hasMany = [myList : Stuff]

但我现有的测试开始抛出

Stuff._MyContainer_mylistBackref; nested exception is org.hibernate.PropertyValueException: not-null property references a null or transient value

表示两者在处理方式上并不相同。我在这里做错了什么?

1 个答案:

答案 0 :(得分:3)

5.2.4 of the Grails manual部分所述,这是使集合成为List的正确方法。

我怀疑问题是默认情况下,约束nullable(false)应用于所有域类属性,并且您尝试为此属性保存空值。要解决此问题,请添加一个允许此属性为null的约束(如果这是您想要的

List myList
static constraints = {
    myList(nullable: true)
}

或者,在验证/保存对象之前,请确保该属性不为null。