Grails域类约束';非空';

Grails域类约束';非空';,grails,notnull,Grails,Notnull,我有一个域类: class ProgramArea { String programCd String programArea String description static constraints = { programCd(nullable: false, unique: true) programArea(nullable: false, blank: false,

我有一个域类:

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字段为“notnull”字段。但是,这不是用户输入的字段。 我在控制器中有生成programCd的代码。 然而,当我尝试插入新数据时,我得到一个验证错误,说programCd不能为null

如果我将programCd的约束修改为“nullable:true”,则一切正常。
有人能告诉我是否有解决方法吗?

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


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

您可能需要在修改域实例后重新验证它:

programAreaInstance.programCd = 'something'
programAreaInstance.validate()

我们能看看控制器的代码吗?