it-swarm.dev

"Entity API"가 Drupal API에 추가하는 이유는 무엇이며 모듈은 왜 API에 의존합니까?

Entity API 모듈은 Drupal에 정의 된 엔티티 API를 확장합니다. 어떤 경우 모듈은 해당 모듈에서 제공된 API를 사용해야합니까? Entity API 모듈에 의존하는 경우 새 엔터티를 구현하는 모듈을보다 쉽게 ​​작성할 수 있습니까?

"보다 쉽게 ​​작성"한다는 것은 Entity API를 사용하는 모듈이 Entity API를 사용하지 않는 모듈에 비해 적은 코드를 작성해야한다는 것을 의미합니다.

프로젝트 페이지를 읽었지만 Drupal에만 의존하는 모듈이 아니라 Entity API 모듈에 의존하는 모듈을 선호하는 이유를 여전히 이해하지 못합니다. 핵심 코드. 규칙을 확장하고 엔터티를 구현하는 모듈은 Entity API 모듈을 사용해야합니다. 첫 번째 경우 Rules 모듈이 Entity API 모듈에 의존하기 때문입니다.

12
kiamlaluno

완전하지는 않지만 여기에 내가 알고있는 장점이 있습니다.

  • Drupal 코어는 엔티티로드를위한 EntityController 만 제공합니다. 저장, 업데이트 및 삭제를 위해서는 직접 작성하거나 Entity API를 사용해야합니다.
  • Hook_entity_property_info () 엔티티의 기본 속성을 노출 할 수 있습니다. 예는 privatemsg_entity_property_info () 를 참조하십시오. 이것의 장점은 rules.module이 엔티티 속성을 알고 규칙으로 읽고 쓰는 것입니다. 또한 토큰 통합도 무료로 제공됩니다.
  • 또한 엔티티에 대한 관리 UI를 자동으로 제공 할 수 있습니다
15
Berdir

자동 뷰 통합, 관리 UI, 내보낼 수있는 엔티티 (모두 선택 사항). 또한 D7로 만들지 않은 많은 구문 설탕 것들과 당신이 필요로합니다 (일반적인 entity_save (), entity_create (), 커스텀 로직을 "엔티티 클래스"에 넣습니다 ...)

또한 모듈 (efq_views, rules)은 속성으로 정말 멋진 일을합니다.

7
Bojan Zivanovic