public function FieldConfigBase::addPropertyConstraints in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Field/FieldConfigBase.php \Drupal\Core\Field\FieldConfigBase::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.
Overrides FieldConfigInterface::addPropertyConstraints
See also
\Drupal\Core\Field\FieldConfigInterface::addConstraint()
hook_entity_bundle_field_info_alter()
File
- core/
lib/ Drupal/ Core/ Field/ FieldConfigBase.php, line 574
Class
- FieldConfigBase
- Base class for configurable field definitions.
Namespace
Drupal\Core\FieldCode
public function addPropertyConstraints($name, array $constraints) {
foreach ($constraints as $constraint_name => $options) {
$this->propertyConstraints[$name][$constraint_name] = $options;
}
// Reset the field item definition so the next time it is instantiated it
// will receive the new constraints.
$this->itemDefinition = NULL;
return $this;
}