2015-12-02 69 views
0

在grails中,可以在域定义中定义约束条件。这些约束看起来像代码块中的一些方法调用。约束定义中的句法结构是什么?

是他们真正的方法调用?

我可以把一些有不同的方法调用,如

Math.sin(12)

?我试过了,没有错。

如果它们是函数调用,那么如何看待该函数的代码?

enter image description here

与任何类别字段在Groovy相关的一些方法,或这些功能仅在Grails的某种方式加入?他们如何添加?

我知道我会看到这个以后使用Grails熟悉,但我在开始时很紧张会议曼波 - yambo! :)

回答

1

所以,你有好几个问题,我会尽我所能来回答以下这些。

首先,约束(你在找什么,在这里)是只Grails和不Groovy语言的一部分。

其次,约束是一个静态闭合,而不是一个方法。封闭的内容也不是方法。闭包中的信息由Grails中的约束处理使用,以将约束类型应用于您的域类的各种属性。

最后,如果您想进行自己的验证(例如,调用您自己的方法),则可以使用validator,如documentation中所述。

我也强烈推荐您阅读文档中有关validation的部分。它有很多很好的信息。

+0

是不是'void type(Map)'方法? – Dims

+0

是的,这是一个有效的方法定义。但是,如果您深入了解约束代码,您将会看到实际正在进行的操作,而这些操作并不像您认为的那样。 –

+0

看看源代码:https://github.com/grails/grails-core/tree/master/grails-validation/src/main/groovy/grails/validation –

相关问题