Class Phalcon\Validation\Validator\Uniqueness

extends abstract class Phalcon\Validation\CombinedFieldsValidator

implements Phalcon\Validation\ValidatorInterface

Source on GitHub

Check that a field is unique in the related table

  1. <?php
  2. use Phalcon\Validation\Validator\Uniqueness as UniquenessValidator;
  3. $validator->add(
  4. "username",
  5. new UniquenessValidator(
  6. [
  7. "model" => new Users(),
  8. "message" => ":field must be unique",
  9. ]
  10. )
  11. );

Different attribute from the field:

  1. <?php
  2. $validator->add(
  3. "username",
  4. new UniquenessValidator(
  5. [
  6. "model" => new Users(),
  7. "attribute" => "nick",
  8. ]
  9. )
  10. );

In model:

  1. <?php
  2. $validator->add(
  3. "username",
  4. new UniquenessValidator()
  5. );

Combination of fields in model:

  1. <?php
  2. $validator->add(
  3. [
  4. "firstName",
  5. "lastName",
  6. ],
  7. new UniquenessValidator()
  8. );

It is possible to convert values before validation. This is useful in situations where values need to be converted to do the database lookup:

  1. <?php
  2. $validator->add(
  3. "username",
  4. new UniquenessValidator(
  5. [
  6. "convert" => function (array $values) {
  7. $values["username"] = strtolower($values["username"]);
  8. return $values;
  9. }
  10. ]
  11. )
  12. );

Methods

public validate (Phalcon\Validation $validation, mixed $field)

Executes the validation

protected isUniqueness (Phalcon\Validation $validation, mixed $field)

protected getColumnNameReal (mixed $record, mixed $field)

The column map is used in the case to get real column name

protected isUniquenessModel (mixed $record, array $field, array $values)

Uniqueness method used for model

protected isUniquenessCollection (mixed $record, array $field, array $values)

Uniqueness method used for collection

public __construct ([array $options]) inherited from Phalcon\Validation\Validator

Phalcon\Validation\Validator constructor

public isSetOption (mixed $key) inherited from Phalcon\Validation\Validator

Checks if an option has been defined

public hasOption (mixed $key) inherited from Phalcon\Validation\Validator

Checks if an option is defined

public getOption (mixed $key, [mixed $defaultValue]) inherited from Phalcon\Validation\Validator

Returns an option in the validator’s options Returns null if the option hasn’t set

public setOption (mixed $key, mixed $value) inherited from Phalcon\Validation\Validator

Sets an option in the validator