Entity API

该模块用于增强 Drupal 内核提供的 Entity API 的能力,为操作 Entity 及其属性提供一套统一方法。通过 Entity 的 CRUD 控制器,可以简化创建新实体类型的工作量。

开发人员进行 Entity 开发时可以使用,一般站长可仅在其它模块依赖此模块时再下载。

运行环境要求

  • Drupal 7.2 及以后版本

面向站长

该模块本身不提供面向终端用户功能,但让其它模块可提供一些站长适用的功能:

  • 提供 Views 显示插件和字段用于渲染 Entity (by view-mode)
  • 提供 CTools 内容插件用于渲染 Entity (by view-mode)
  • 通过 Entity tokens 模块让大部分实体属性和字段可通过 Token 表示

面向开发人员

  • 提供创建、保存、删除、查看及访问实体的 API,如: entity_create(), entity_save(), entity_delete(), entity_view()entity_access().
  • 实体定义 API: hook_entity_property_info(). 实体的元数据包含属性的数据类型、get/set 回调方法等。其它模块可以基于这些信息来实现对实体属性的使用,例如 Rules 模块和 Search API 模块都依赖于此。
  • 模块提供了 data wrappers 用以提供简单及统一的方法来访问实体和其属性,使用方法可参考 README 文档及相关测试代码。
  • 模块可用于定义新的实体类型,并为实体提供了完整的 CRUD 能力。也可通过继承 Entity 类的方式来创建新实体。
  • 模块关注于提供字段化(fieldable)、可版本跟踪(revisionable)、可导出(exportable)、支持子类(bundle)的实体。
  • 基于 CRUD API 创建的实体类型,也同时与其它整合了 API 的模块实现了整合,例如 Rules 事件提供完整的 CRUD 相关钩子;hook_entity_property_info() 提供的基础属性自动与 Features 模块实现了整合。
    模块间的整合通过不同的控制器实现,因此还能做到单独复写、启用和禁用。
  • 模块还可帮助提供相关的实体管理界面,例如 Profile 2 模块用于管理资料类型的管理界面便是基于此创建。

兼容性提示: 如需使用 i18n (i18n_translation) 模块提供多语言功能,需要使用 1.5 或更新版本的 i18n 模块。

Drupal 8

  • Drupal 8 内核的 Entity API 模块已经大幅改进,因此 D7 版本 Entity API 模块的大部分功能都已经内置于 D8 内核中。
  • Drupal 8 版本的 Entity API 模块则用于持续改进内核 Entity API,并于今后再纳入到内核中。

文档

项目信息

名称:Entity API (entity)
类型:模块
安装量:超过 512,757 个站点正在使用(查看统计

下载地址