Jak wyświetlić wszystkie dostępne typy jednostek w Drupal za pomocą drush?
Związane z:
Jak wyświetlić wszystkie dostępne typy jednostek w Drupal za pomocą drush?
Związane z:
Odpowiedzi:
drush eval "print_r(array_keys(entity_get_info()));"
drush eval "print_r(array_keys(\Drupal::entityTypeManager()->getDefinitions()));"
zgodnie z sugestią Jasona ,
lub:
drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()));"
zgodnie z sugestią @RaisinBranCrunch . Uwaga \Drupal::entityManager()
jest przestarzała w wersji 8.x.
drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()))";
entityManager
jest przestarzałe w najnowszych wersjach d8, użyj entityTypeManager
dla nowszych wersji
Użyj polecenia konsoli drupal:
drupal debug:entity
lub (krótka ręka):
drupal de
Spowoduje to utworzenie zwięzłej listy podmiotów dostępnych w Twojej instancji.
Możesz utworzyć komendę drush o nazwie entities-list
. Utwórz moduł, umieść w pliku o nazwie drush_entity.drush.inc
i wklej ten kod:
<?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));
}
Zainstaluj moduł, uruchom, drush cc drush
aby wyczyścić pamięć podręczną drush i użyj następującego polecenia:
drush el
lub
drush entities-list
Jeśli chcesz dodać kolejny alias do polecenia, dodaj elementy do tablicy aliasów w następujący sposób:
'aliases' => array('el', 'another'),
I możesz użyć tych poleceń:
drush el
drush entities-list
drush another
Zawsze wynik będzie:
Machine name:
entity 1
entity 2
entity...
entity n
EDYTOWAĆ:
Istnieje inne rozwiązanie wykorzystujące moduł Drush Entity :
drush entity-type-read