Alias
Creates an alias between a single attribute's validations to another. This copies all messages, errors, etc., to the current attribute as well as its validation state (isValid, isValidating, etc.)
Options
firstMessageOnly
(Boolean): If true, only returns the first error message of the aliased attribute and will not include validation state
// Examples
validator('alias', 'attribute')
validator('alias', {
alias: 'attribute',
firstMessageOnly: true
})
Properties
Methods
buildOptions
(
Object
-
options
-
defaultOptions
-
globalOptions
Normalized options passed in.
validator('alias', 'attribute')
// Becomes
validator('alias', {
alias: 'attribute'
})
Returns:
createErrorMessage
(
String
-
type
-
value
-
options
Used by all pre-defined validators to build an error message that is present
in
validators/message
or declared in your i18n solution.
If we extended our default messages to include uniqueUsername: '{username} already exists'
,
we can use this method to generate our error message.
`
javascript
validate(value, options) {
var exists = false;
options.description = 'Username';
options.username = value;
// check with server if username exists...
if(exists) {
return this.createErrorMessage('uniqueUsername', value, options);
}
return true;
}
`
If we input johndoe
and that username already exists, the returned message would be 'johndoe already exists'
.Parameters:
Returns:
String:
The generated message
getValue
()
Unknown
private
Wrapper method to
value
that passes the necessary parametersReturns:
Unknown:
value
processOptions
()
Object
Creates a new object and calls any option property that is a function with the validator context.
This method is called right before
validate
and the returned object gets passed into the validate method as its optionsReturns:
validate
(
-
value
-
options
-
model
-
attribute
The validate method is where all of your logic should go.
It will get passed in the current value of the attribute this validator is attached to.
Within the validator object, you will have access to the following properties:
Parameters:
Returns:
One of the following types:
-
Boolean
: true
if the current value passed the validation
- String
: The error message
- Promise
: A promise that will either resolve or reject, and will finally return either true
or the final error message string.
Properties
model
Model
Model instance