Como listar todos os tipos de entidades disponíveis no Drupal usando drush?
Palavras-chave:
Como listar todos os tipos de entidades disponíveis no Drupal usando drush?
Palavras-chave:
Respostas:
drush eval "print_r(array_keys(entity_get_info()));"
drush eval "print_r(array_keys(\Drupal::entityTypeManager()->getDefinitions()));"
conforme sugestão de Jason ,
ou:
drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()));"
conforme sugestão do @RaisinBranCrunch . A nota \Drupal::entityManager()
está sendo descontinuada no 8.x.
drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()))";
entityManager
é obsoleto em versões mais recentes do D8, o uso entityTypeManager
de versões mais recentes
Use o comando drupal console:
drupal debug:entity
ou (mão curta):
drupal de
Isso produzirá uma lista concisa de entidades disponíveis em sua instância.
Você pode criar um comando drush chamado entities-list
. Crie um módulo, coloque dentro de um arquivo chamado drush_entity.drush.inc
e cole este código:
<?php
/**
* @file
* Drush commands related to Entities.
*/
/**
* Implements hook_drush_command().
*/
function drush_entity_drush_command() {
$items['entities-list'] = array(
'description' => dt("Show a list of available entities."),
'aliases' => array('el'),
);
return $items;
}
/**
* Callback for the content-type-list command.
*/
function drush_drush_entity_entities_list() {
$entities = array_keys(entity_get_info());
sort($entities);
drush_print(dt("Machine name"));
drush_print(implode("\r\n", $entities));
}
Instale o módulo, execute drush cc drush
para limpar o cache de drush e use o comando como este:
drush el
ou
drush entities-list
Se você deseja adicionar outro alias ao comando, adicione elementos à matriz de aliases como esta:
'aliases' => array('el', 'another'),
E você pode usar estes comandos:
drush el
drush entities-list
drush another
Sempre a saída será:
Machine name:
entity 1
entity 2
entity...
entity n
EDITAR:
Há outra solução usando o módulo Drush Entity :
drush entity-type-read