Java Grails域类字符串列表未持久化
这在Grails2.5.6代码中。我有一个使用继承的域类。其中一个子类包含存储在变量Java Grails域类字符串列表未持久化,java,grails,groovy,gorm,grails-domain-class,Java,Grails,Groovy,Gorm,Grails Domain Class,这在Grails2.5.6代码中。我有一个使用继承的域类。其中一个子类包含存储在变量value中的字符串列表。调用.save()时,域类本身使用正确的继承行为正确保存,但不会保存值。以下是我的域类: abstract class Condition implements ICondition, IMarshaler { String field; static mapping = { tablePerHierarchy false; } ... }
value
中的字符串列表。调用.save()
时,域类本身使用正确的继承行为正确保存,但不会保存值。以下是我的域类:
abstract class Condition implements ICondition, IMarshaler {
String field;
static mapping = {
tablePerHierarchy false;
}
...
}
class ListCondition extends Condition {
static hasMany = [values: String];
List<String> values;
...
}
偶然发现了一个类似的问题。尝试
condition.save(flush:true)
或者更好地尝试在事务中运行持久性逻辑。这似乎起到了作用,并且被认为是最佳实践。尝试condition.save(failOnError:true),如果出现错误,它将为您提供一些stacktrace
ListCondition condition = new ListCondition(field: 'someField', values: ['test', 'otherTest'])
condition.save()
println ListCondition.getAll()[0].values.size() // Prints 0