(Quick Reference) ## constraints ### Purpose Allows the definition of declarative validation constraints. See validation in the user guide. ### Examples
    class Book {

        String title
        Author author

        static constraints = {
            title blank: false, size: 5..150
            author nullable: true
        }
    }
### Description Constraints are defined using the declarative constraints DSL as described in the validation section of the user guide. Once evaluated, validation can be applied through the use of the validate method:
    def b = new Book()
    assert !b.validate()
The static `constrainedProperties` property is a Map such that the keys in the Map are property names and the values associated with the keys are instances of ConstrainedProperty:
    def constraintsMap = Book.constrainedProperties
    for(entry in constraintsMap) {
        // propertyName is a String
        def propertyName = entry.key

        // constrainedProperty is a ConstrainedProperty
        def constrainedProperty = entry.value

        // ...
    }
| Quick Reference (hide)