function FieldConfigBase::getDefaultValue

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Field/FieldConfigBase.php \Drupal\Core\Field\FieldConfigBase::getDefaultValue()
  2. 8.9.x core/lib/Drupal/Core/Field/FieldConfigBase.php \Drupal\Core\Field\FieldConfigBase::getDefaultValue()
  3. 10 core/lib/Drupal/Core/Field/FieldConfigBase.php \Drupal\Core\Field\FieldConfigBase::getDefaultValue()

Overrides FieldDefinitionInterface::getDefaultValue

File

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

Class

FieldConfigBase
Base class for configurable field definitions.

Namespace

Drupal\Core\Field

Code

public function getDefaultValue(FieldableEntityInterface $entity) {
    // Allow custom default values function.
    if ($callback = $this->getDefaultValueCallback()) {
        $value = call_user_func($callback, $entity, $this);
        $value = $this->normalizeValue($value, $this->getFieldStorageDefinition()
            ->getMainPropertyName());
    }
    else {
        $value = $this->getDefaultValueLiteral();
    }
    // Allow the field type to process default values.
    $field_item_list_class = $this->getClass();
    return $field_item_list_class::processDefaultValue($value, $entity, $this);
}

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