Qual é o equivalente field_info_instance()
para o Drupal 8?
As configurações de campo padrão são armazenadas como configuração em um arquivo como field.field.ENTITYTYPE.BUNDLE.FIELDNAME.yml, mas como obtenho seu valor atual?
Usando o serviço entity_field.manager , você pode obter uma matriz de classes BaseFieldDefinition. Este serviço também é injetável, mas para copiar e colar código de trabalho, você pode fazer o seguinte:
$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);
Usando uma instância de campo:
Por exemplo, em um widget de campo:
fonte
Eu queria obter o Type e Label da definição de campo. Isso não funcionou:
Isso funcionou:
fonte
A maneira mais simples de obter a configuração do campo é usar o EntityTypeManager .
fonte