0

这看起来像是一个基本问题,我正在尝试在 groovy 控制台工具中测试 Grails 约束。

它仅在我执行任何数据库 CRUD 操作时才有效吗?

示例代码是这样的

class AAA{
    String a
    String b
    static constraints = {
         a size:5..8
         b nullable:false
    }
}

def x = new AAA(a:'sss',b:null)
println x.a
println x.b

输出是

sss
null

为什么他们不工作?

4

3 回答 3

1

是的,因为该object.validate() 方法只会在保存对象之前验证这些约束。根据 grails 的官方文档。

约束为 Grails 提供了用于定义验证规则、模式生成和 CRUD 生成元数据的声明性 DSL。。见下文

http://grails.org/doc/2.3.x/ref/Constraints/Usage.html

于 2014-06-04T11:06:18.200 回答
0

在这个url中有一个关于 gorm 访问和验证 trought grails 控制台的 wiki你可以在这里找到一些帮助

于 2014-06-04T15:55:24.373 回答
0

使用 grails 控制台时,看起来需要再次停止并运行应用程序。

于 2017-02-15T20:55:07.877 回答