cbValidation
v1.x
v1.x
  • Introduction
  • Overview
    • Installation
    • Configuration
    • Declaring Constraints
      • Configuration File
      • Domain Object
      • A-la-carte
    • Available Constraints
      • Unique Constraints
      • Constraint Custom Messages
      • Custom Message Replacements
    • Validating Constraints
      • Validating With Failures
      • Validating with shared constraints
      • Validating with a-la-carte constraints
      • Validating Custom Fields
    • Displaying Errors
    • WireBox DSL & Integration
  • Advanced
    • i18n Integration
    • Advanced Custom Validators
    • Custom Validators
    • Custom Validation Managers
Powered by GitBook
On this page
  • Declaration
  • Usage

Was this helpful?

Edit on Git
Export as PDF
  1. Overview
  2. Declaring Constraints

Configuration File

PreviousDeclaring ConstraintsNextDomain Object

Last updated 5 years ago

Was this helpful?

You can optionally register shared constraints in your file under the validation directive. This means you register them with a unique name of your choice and its value is a collection of constraints for properties in your objects or forms.

Later on you will reference the key name in your handlers or wherever in order to validate the object or form. Here is an example:

Declaration

validation = {
    sharedConstraints = {
        sharedUser = {
            fName = {required=true},
            lname = {required=true},
            age   = {required=true, max=18 }
            metadata = {required=false, type="json"}
        },
        loginForm = {
            username = {required=true}, password = {required=true}
        },
        changePasswordForm = {
            password = {required=true,min=6}, password2 = {required=true, sameAs="password", min=6}
        }
    }
}

As you can see, our constraints definition describes the set of rules for a property on ANY target object or form.

Usage

You can then use the keys for those constraints in the validation calls:

validate( target, "sharedUser" );

validate( rc, "loginForm" );

validate( rc, "changePasswordForm" );
ColdBox configuration