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

Creates a form element for a field.

If the entity associated with the form is new (i.e., $entity->isNew() is TRUE), the 'default value', if any, is pre-populated. Also allows other modules to alter the form element by implementing their own hooks.

Parameters

\Drupal\Core\Field\FieldItemListInterface $items: An array of the field values. When creating a new entity this may be NULL or an empty array to use default values.

array $form: An array representing the form that the editing element will be attached to.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

int $get_delta: Used to get only a specific delta value of a multiple value field.

Return value

array The form element array created for this field.

1 method overrides WidgetBaseInterface::form()
WidgetBase::form in core/lib/Drupal/Core/Field/WidgetBase.php
Creates a form element for a field.

File

core/lib/Drupal/Core/Field/WidgetBaseInterface.php, line 39

Class

WidgetBaseInterface
Base interface definition for "Field widget" plugins.

Namespace

Drupal\Core\Field

Code

public function form(FieldItemListInterface $items, array &$form, FormStateInterface $form_state, $get_delta = NULL);