欢迎各位兄弟 发布技术文章
这里的技术是共享的
与本文相关的Drupal专业术语的翻译说明:
很多朋友在学习Drupal的过程中都会遇到上述4个有关联的术语,搞不清楚它们是什么?它们之间有怎样的关系?等等一些概念上的问题。本文旨在帮助大家厘清这4个基本概念。
实体类型(Entity types)
实体类型本质上是抽象的拥有相同属性的个体的集合。
举例来说,在Drupal网站中,一条评论是一个独立的个体,每条评论都拥有相同的属性,如:评论标题,评论人的姓名,评论人的邮箱,评论人的主页,评论内容。那么所有评论就可以抽象为一个集合,这个集合就是Drupal中的实体类型。
常见的Drupal实体类型:
包 (数据扩展)(Bundles)
包是实体类型的实现。同一实体类型下面的不同的包,除了拥有相同的属性以外,往往还拥有不同的属性。实体类型可以拥有几个包,也可以没有包。
以Drupal实体类型中的节点来举例说明,节点这个实体类型可以分为文章,页面,博文,商品等多个包。包之间即有相同的属性,如都有标题,发布时间,作者等等;包之间也有不同的属性,如商品拥有的价格属性是别的包所没有的。
字段(Fields)
字段即数据库表中的字段,或者说数据库表中的列。用于保存上文中所提到的属性的值。字段可以用于任何包 (数据扩展),或直接用于实体类型(当实体类型没有包时)。
实体(Entity)
实体是实体类型中的个体组成部分,学术点的说法是:实体是实体类型的实例。
例如:在博文这个实体类型的包(数据扩展)中,一篇博文就是一个实体。
上面写的内容很枯燥,像教科书,读起来头有点犯晕是吗?没关系,下面我来做两个类比,大家就不晕了。O(∩_∩)O
第一个类比:用面向对象的编程概念和这些Drupal术语类比,适合熟悉面向对象技术的程序员朋友。
第二个类比:用日常生活中的餐具和这些Drupal术语类比,适合非程序员朋友。
Drupal术语 | 面向对象 | 餐具 |
---|---|---|
实体类型(Entity types) | 父类 | 餐具 |
包(Bundles) | 子类 | 筷子 |
字段(Fields) | 类的属性 | 竹子,两根,一头大来一头小(不是棺材哟O(∩_∩)O) |
实体(Entity) | 对象 | 一双筷子 |