0

我有一个域类:

class ProgramArea {
       String        programCd
       String        programArea
       String        description

    static constraints = {
programCd(nullable: false, unique: true)
              programArea(nullable: false, blank: false, unique: true)
              description(nullable: true, blank: true, maxSize: 50)
    }

}

在数据库中,我希望 programCd 字段为“NOT NULL”字段。但是,这不是用户输入的字段。我在控制器中有代码来生成 programCd。但是,当我尝试插入新数据时,我收到一个验证错误,提示 programCd 不能为空。

如果我将 programCd 的约束修改为“可为空:true”,则一切正常。有人可以让我知道是否有解决方法吗?

4

2 回答 2

0

请确保将“programCd”的值分配给类的对象。这里似乎有一个错误,您可能正在生成 programCD 的值,但可能没有添加到类的对象中,因此该值保持为空。

尝试检查您的控制器或在此处粘贴代码,以便我们提供帮助

于 2014-10-14T21:30:43.370 回答
0

您可能必须在修改后重新验证您的域实例:

programAreaInstance.programCd = 'something'
programAreaInstance.validate()
于 2014-10-15T08:08:43.040 回答