You are here

public function FieldConfigBase::getConstraints in Drupal 9

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Field/FieldConfigBase.php \Drupal\Core\Field\FieldConfigBase::getConstraints()

Returns an array of validation constraints.

The validation constraints of a definition consist of any for it defined constraints and default constraints, which are generated based on the definition and its data type. See \Drupal\Core\TypedData\TypedDataManager::getDefaultConstraints().

Constraints are defined via an array, having constraint plugin IDs as key and constraint options as values, e.g.

$constraints = array(
  'Range' => array(
    'min' => 5,
    'max' => 10,
  ),
  'NotBlank' => array(),
);

Options have to be specified using another array if the constraint has more than one or zero options. If it has exactly one option, the value should be specified without nesting it into another array:

$constraints = array(
  'EntityType' => 'node',
  'Bundle' => 'article',
);

Note that the specified constraints must be compatible with the data type, e.g. for data of type 'entity' the 'EntityType' and 'Bundle' constraints may be specified.

Return value

array[] An array of validation constraint definitions, keyed by constraint name. Each constraint definition can be used for instantiating \Symfony\Component\Validator\Constraint objects.

Overrides DataDefinitionInterface::getConstraints

See also

\Drupal\Core\Validation\ConstraintManager

\Symfony\Component\Validator\Constraint

1 call to FieldConfigBase::getConstraints()
FieldConfigBase::getConstraint in core/lib/Drupal/Core/Field/FieldConfigBase.php
Returns a validation constraint.

File

core/lib/Drupal/Core/Field/FieldConfigBase.php, line 499

Class

FieldConfigBase
Base class for configurable field definitions.

Namespace

Drupal\Core\Field

Code

public function getConstraints() {
  return \Drupal::typedDataManager()
    ->getDefaultConstraints($this) + $this->constraints;
}