function FieldConfigInterface::addPropertyConstraints

Same name in other branches
  1. 9 core/lib/Drupal/Core/Field/FieldConfigInterface.php \Drupal\Core\Field\FieldConfigInterface::addPropertyConstraints()
  2. 10 core/lib/Drupal/Core/Field/FieldConfigInterface.php \Drupal\Core\Field\FieldConfigInterface::addPropertyConstraints()
  3. 11.x core/lib/Drupal/Core/Field/FieldConfigInterface.php \Drupal\Core\Field\FieldConfigInterface::addPropertyConstraints()

Adds constraints for a given field item property.

Adds a constraint to a property of a field item. e.g.

// Limit the field item's value property to the range 0 through 10.
// e.g. $node->field_how_many->value.
$field->addPropertyConstraints('value', [
    'Range' => [
        'min' => 0,
        'max' => 10,
    ],
]);

If you want to add a validation constraint that applies to the \Drupal\Core\Field\FieldItemList, use FieldConfigInterface::addConstraint() instead.

Note: passing a new set of options for an existing property constraint will overwrite with the new options.

Note that constraints added via this method are not stored in configuration and as such need to be added at runtime using hook_entity_bundle_field_info_alter().

Parameters

string $name: The name of the property to set constraints for.

array $constraints: The constraints to set.

Return value

static The object itself for chaining.

See also

\Drupal\Core\Field\FieldConfigInterface::addConstraint()

hook_entity_bundle_field_info_alter()

1 method overrides FieldConfigInterface::addPropertyConstraints()
FieldConfigBase::addPropertyConstraints in core/lib/Drupal/Core/Field/FieldConfigBase.php
Adds constraints for a given field item property.

File

core/lib/Drupal/Core/Field/FieldConfigInterface.php, line 213

Class

FieldConfigInterface
Defines an interface for configurable field definitions.

Namespace

Drupal\Core\Field

Code

public function addPropertyConstraints($name, array $constraints);

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.