Grails域属性defaultValue未设置

时间:2016-12-06 21:20:03

标签: grails gorm

在域中,我有以下状态属性的说明

static mapping={
    status defaultValue="NNE"
}

static constraints={
   status(nullable:false, inList:["NNE","NMO","NJE"])
}

但是当我创建域对象的新实例时,状态为null而不是设置为默认值。

def instance=new Ticket();
println instance.status;// this is NULL instead of the default "NNE"

这应该是这样的吗?

1 个答案:

答案 0 :(得分:1)

不,这不是假设的情况。 defaultValue是数据库约束(mapping影响数据库模式)的提示,而不是域类本身。如果需要默认值,请在属性上设置默认值。例如:

class TheClass {
  String status = 'DEFAULTHERE'
  ...
}