사용 가능한 모든 엔티티 유형을 나열하는 방법은 무엇입니까?


답변:


29

드루팔 7

drush eval "print_r(array_keys(entity_get_info()));"

드루팔 8

drush eval "print_r(array_keys(\Drupal::entityTypeManager()->getDefinitions()));"

제이슨 제안 ,

또는:

drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()));"

@RaisinBranCrunch 제안 . 참고 \Drupal::entityManager()는 8.x에서 더 이상 사용되지 않습니다.


1
Drupal 8의 경우 drush eval "print_r (array_keys (\ Drupal :: entityTypeManager ()-> getDefinitions ()));"
Jason

2
나를 위해drush eval "print_r(array_keys(\Drupal::entityManager()->getDefinitions()))";
RaisinBranCrunch

EntityManager에서 e 대신 Cpas E를 사용하십시오. drush eval "print_r (array_keys (\ Drupal :: EntityManager ()-> getDefinitions‌ ()))"; 위해 entityManager는 depricated됩니다
수레 쉬 쿠 마라를

1
entityManagerD8, 사용의 최신 버전에서 사용되지 않습니다 entityTypeManager새 버전
wranvaud

6

드루팔 8

drupal 콘솔 명령을 사용하십시오 :

drupal debug:entity

또는 (짧은 손) :

drupal de

이것은에서 사용할 수있는 개체의 간결한 목록을 생성 할 것이다 당신의 인스턴스를.


2
OP는 구체적으로 "Drush 사용"이라고 말합니다
Frank Robert Anderson

2
drush eval 'system ( "drupal de");' 😉
diamondsea

감사합니다 @diamondsea 😉
Latinrickshaw

3

라는 이름의 drush 명령을 만들 수 있습니다 entities-list. 모듈을 작성하고 이름 drush_entity.drush.inc이 지정된 파일에 넣고이 코드를 붙여 넣습니다.

<?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));
}

모듈을 설치하고 실행 drush cc drush하여 drush 캐시를 지우고 다음과 같은 명령을 사용하십시오.

drush el

또는

drush entities-list

명령에 다른 별명을 추가하려면 다음과 같이 별명 배열에 요소를 추가하십시오.

'aliases' => array('el', 'another'),

이 명령을 사용할 수 있습니다 :

drush el
drush entities-list
drush another

항상 출력은 다음과 같습니다

Machine name:
entity 1
entity 2
entity...
entity n

편집하다:

Drush Entity 모듈을 사용하는 또 다른 솔루션이 있습니다 .

drush entity-type-read

1
답에 어떤 문제가 있는지 말하지 않은 다른 downvoter는 downvote 버튼을 누르십시오. 그러나 문제가 무엇인지 말하지 않으면 해결할 수 없습니다.
Adrian Cid Almaguer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.