Mit folgendem Code ist es in Drupal möglich die Liste der zulässigen Werte für ein Feld zu ändern:
$field = \Drupal::entityTypeManager()
->getStorage('field_storage_config')
->load('entity.field_name');
$allowed_values = $field->getSetting('allowed_values');
$field->setSetting('allowed_values', $allowed_values);
$field->save();
Entscheidend hier der Inhalt von ->load('entity.field_name');
entity ist die Entity welcher das Feld zugeordnet ist (z. B. node oder paragraph), field_name ist der Feldname. Über admin/config/development/configuration/single/export (Field Storage) kann man sich diese Information z. B. holen.
Das kann man z. B. in einem Update_hook unterbringen um ein Feld upzudaten. Wenn man die Feldinformationen per config/install (oder config/optional) bereitstellt, sollte man diese Files auch aktualisieren damit auch bei einer Neuinstallation die Konfiguration passt.
Neuen Kommentar schreiben