注:本系列先前已发布过两篇关于实体基础性介绍的主题:《实体概述》和《实体类型管理器、实体类型、实体》,请先查阅,从本主题开始将深入到具体的代码细节,并以序列编号有关实体的主题,该序列将指导学习的顺序。
纵观实体概念有一些要点:
实体对象本身:保存着数据和一些常用方法
实体类型对象:保存实体的元数据,来自于实体类定义中的释文头部
实体处理器:一系列针对实体处理的一些操作,如储存、访问控制、列表构建、表单构建、路由提供、视图数据、视图构建等等,这些处理器在释文元数据中指定,每一种类型的实体对应的处理器可能是不一样的,往往是特定的类
实体类型对象比较简单,主要是通过插件机制将定义在实体插件释文中的元数据注入到该对象中,便于操作,对必要的元数据如果没有定义的情况下设置默认值,在使用过程可以通过set方法对元信息进行更改,默认实现是:
Drupal\Core\Entity\ EntityType:(Drupal\Core\Entity\ EntityTypeInterface)
现在系统中有两大类实体:内容实体和配置实体,根据少量差异分别为他们实现了实体类型对象,他们都继承自以上的实体类型基类:
Drupal\Core\Entity\ContentEntityType(Drupal\Core\Entity\ContentEntityTypeInterface)
Drupal\Core\Config\Entity\ConfigEntityType(Drupal\Core\Config\Entity\ConfigEntityTypeInterface)
云客Drupal源码分析之实体entity(一):实体基类
最新推荐文章于 2023-03-20 07:45:00 发布
本文是Drupal源码分析系列的一部分,主要探讨实体(Entity)的基础,特别是实体基类。实体对象、实体类型对象和实体处理器在Drupal中的角色被详细阐述。文章从实体基类DrupalCoreEntityEntity开始,解释了实体的基本方法和构造函数,讨论了如何通过实体类型管理器获取实体元数据。此外,还涵盖了实体链接、访问控制、缓存标签以及实体的静态方法,如load、create等。
摘要由CSDN通过智能技术生成