public BaseFieldDefinition::addPropertyConstraints($name, array $constraints)
Adds constraints for a given field item property.
Adds a constraint to a property of a base field item. e.g.
// Limit the field item's value property to the range 0 through 10. // e.g. $node->size->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 BaseFieldDefinition::addConstraint() instead.
Note: passing a new set of options for an existing property constraint will overwrite with the new options.
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\BaseFieldDefinition::addConstraint()
File
- core/lib/Drupal/Core/Field/BaseFieldDefinition.php, line 361
Class
- BaseFieldDefinition
- A class for defining entity fields.
Namespace
Drupal\Core\Field
Code
public function addPropertyConstraints($name, array $constraints) { $item_constraints = $this->getItemDefinition()->getConstraint('ComplexData') ? : []; if (isset($item_constraints[$name])) { // Add the new property constraints, overwriting as required. $item_constraints[$name] = $constraints + $item_constraints[$name]; } else { $item_constraints[$name] = $constraints; } $this->getItemDefinition()->addConstraint('ComplexData', $item_constraints); return $this; }
Please login to continue.