Configuration File

You can optionally register shared constraints in your ColdBox configuration 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:


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.


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

validate( target, "sharedUser" );
validate( rc, "loginForm" );
validate( rc, "changePasswordForm" );