Quel est l'équivalent de field_info_instance()
Drupal 8?
Les paramètres de champ par défaut sont stockés en tant que configuration dans un fichier comme field.field.ENTITYTYPE.BUNDLE.FIELDNAME.yml, mais comment obtenir leur valeur actuelle?
En utilisant le service entity_field.manager , vous pouvez obtenir un tableau de classes BaseFieldDefinition. Ce service est également injectable, mais pour le code de travail copier-coller, vous pouvez effectuer les opérations suivantes:
$bundle_fields = \Drupal::getContainer()->get('entity_field.manager')->getFieldDefinitions($entity_type, $bundle);
$field_definition = $bundle_fields[$field_name];
$catalog_id = $field_definition->getSetting($setting_name);
Utilisation d'une instance de champ:
Par exemple, dans un widget de champ:
la source
Je voulais obtenir le type et l'étiquette de la définition du champ. Cela n'a pas fonctionné:
Cela a fonctionné:
la source
La façon la plus simple d'obtenir la configuration de champ est d'utiliser EntityTypeManager .
la source