コード例 #1
0
 /**
  * Creates a new field definition.
  *
  * @param string $type
  *   The type of the field.
  *
  * @return static
  *   A new field definition object.
  */
 public static function create($type)
 {
     $field_definition = new static(array());
     $field_definition->type = $type;
     $field_definition->itemDefinition = FieldItemDataDefinition::create($field_definition);
     // Create a definition for the items, and initialize it with the default
     // settings for the field type.
     // @todo Cleanup in https://drupal.org/node/2116341.
     $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
     $default_settings = $field_type_manager->getDefaultSettings($type) + $field_type_manager->getDefaultInstanceSettings($type);
     $field_definition->itemDefinition->setSettings($default_settings);
     return $field_definition;
 }
コード例 #2
0
ファイル: FieldConfigBase.php プロジェクト: ddrozdik/dmaps
 /**
  * {@inheritdoc}
  */
 public function getItemDefinition()
 {
     if (!isset($this->itemDefinition)) {
         $this->itemDefinition = FieldItemDataDefinition::create($this)->setSettings($this->getSettings());
     }
     return $this->itemDefinition;
 }