grails - Grails约束何时起作用?

标签 grails groovy-console

似乎是一个基本问题,我正在尝试在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

他们为什么不工作?

最佳答案

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

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

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

关于grails - Grails约束何时起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24035668/

相关文章:

grails - 在 grails 中使用 <set> 标签

mysql - 我是否需要在我的 (grails) Web 应用程序中使用 C3P0 池库?

unit-testing - Grails listOrder中单元测试中的@Mock域对象动态查找器抛出异常

unit-testing - 如何在Grails单元测试类中动态模拟域?

Groovy 控制台读取输入

groovy - 使用 Groovy 的 HTTP Builder 使用 PUT 更新 JSON 数据

grails - 带有控制台插件环境的groovy脚本的Cron类应用程序?

java - 在groovyConsole中导入Spring框架抛出错误

groovyConsole 启动时抛出 java.lang.reflect.InvocationTargetException

grails - Grails:如何对嵌入式对象使用executeQuery