# Alle verfügbaren Field Types auflisten
Die Felder oder Eigenschaften einer [[https://www.drupal.org/docs/8/api/entity-api/create-a-custom-content-entity|Content Entity in Drupal 8]] werden innerhalb der Entity Klasse in der ```baseFieldDefinitions``` Methode implementiert. Beispiel:
class Advertiser extends ContentEntityBase implements ContentEntityInterface {
public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
// Standard field, used as unique if primary index.
$fields['id'] = BaseFieldDefinition::create('integer')
->setLabel(t('ID'))
->setDescription(t('The ID of the Advertiser entity.'))
->setReadOnly(TRUE);
// Standard field, unique outside of the scope of the current project.
$fields['uuid'] = BaseFieldDefinition::create('uuid')
->setLabel(t('UUID'))
->setDescription(t('The UUID of the Advertiser entity.'))
->setReadOnly(TRUE);
return $fields;
}
}
## Verfügbare Feldtypen anzeigen
Damit man weiß, welche Feldtypen alle zur Verfügung stehen, die dann in ```BaseFieldDefinition::create()``` genutzt werden können, kann man sich diese mit folgendem Befehl auflisten lassen:
$types = Drupal::service('plugin.manager.field.field_type')->getDefinitions();
foreach ($types as $key => $value) {
echo $key, "\";
}
## Verfügbare Feldtypen in einem Standard Drupal
In einer Standard Drupal 8 Installation gibt es die folgenden Typen:
* comment
* datetime
* file
* image
* link
* list\_string
* list\_float
* list\_integer
* path
* text\_with\_summary
* text
* text\_long
* email
* boolean
* created
* changed
* timestamp
* string\_long
* language
* decimal
* uri
* float
* password
* string
* integer
* entity\_reference
* uuid
* map
* taxonomy\_term\_reference
Da aber viele Contrib Module auch zusätzliche Typen implementieren, ist es immer nützlich, sich die verfügbaren Feldtypen für die eigene Installation anzeigen zu lassen.
{{tag>drupal8}}