drupal的数据模型之三——博客

  drupal6的博客功能是内置在其核心模块中的,如果仅仅为了完成博客功能,只需要两个基础表:node和node_revisions,前者是所有类型内容的基础,后者提供版本记录和正文。但在博客类型中,为了实现内容的简单聚合,引入了“分类”的概念,因此引入了与分类相关的一系列表:

  分类在两个层次上组织,第一层次为词汇(vocabulary),词汇与内容类型(node_type)存在关联(由vocabulary_node_types描述)。第二层次为术语(term),term与vocabulary存在关联,term本身也可以以树状形式展示(由term_hierarchy表描述),term本身可以直接关联(由term_relation描述),也可以存在同义词形式(由term_synonym描述)。

  而最终博客节点的分类却是由term与node直接关联的(由term_node描述)

对于上述表定义说明如下:

vocabulary (vocabulary)

词汇表,用以将术语归类

No. Logical Name Physical Name Type Null Default Value Description
  1 vid vid MEDIUMINT(10) N AUTO INCREMENT
序号
2 name name VARCHAR(255) N 名称
3 description description LONGTEXT Y 描述
4 help help VARCHAR(255) N 帮助提示
5 relations relations TINYINT(3) N
6 hierarchy hierarchy TINYINT(3) N
7 multiple multiple TINYINT(3) N 是否多选,选择了自由标签,此选项默认为真
8 required required TINYINT(3) N 是否必选
9 tags tags TINYINT(3) N 是否列为标签,影响到词汇的展示形式,如果选择标签,选择分类时可以自由填写,否则下拉选择
10 module module VARCHAR(255) N 所属模块名
11 weight weight TINYINT(3) N 权重

vocabulary_node_types (vocabulary_node_types)

词汇与内容类型相关表

No. Logical Name Physical Name Type Null Default Value Description
  1 vid vid MEDIUMINT(10) N 词汇序号
  2 type type VARCHAR(32) N 节点类型

node_type (node_type)

节点类型表,用于建立节点时选择类型

No. Logical Name Physical Name Type Null Default Value Description
  1 type type VARCHAR(32) N 类型代码
2 name name VARCHAR(255) N 类型名称
3 module module VARCHAR(255) N 对应的模块
4 description description MEDIUMTEXT N 描述
5 help help MEDIUMTEXT N 指导说明
6 has_title has_title TINYINT(3) N 是否包含题名
7 title_label title_label VARCHAR(255) N 题名标签
8 has_body has_body TINYINT(3) N 是否包含正文
9 body_label body_label VARCHAR(255) N 正文标签
10 min_word_count min_word_count SMALLINT(5) N 最小字数限制
11 custom custom TINYINT(3) N 是否自定义类型
12 modified modified TINYINT(3) N
13 locked locked TINYINT(3) N
14 orig_type orig_type VARCHAR(255) N

term_data (term_data)

术语表

No. Logical Name Physical Name Type Null Default Value Description
  1 tid tid MEDIUMINT(10) N AUTO INCREMENT
术语序号
2 vid vid MEDIUMINT(10) N 词汇序号
3 name name VARCHAR(255) N 术语名称
4 description description LONGTEXT Y 描述
5 weight weight TINYINT(3) N 权重

term_hierarchy (term_hierarchy)

术语继承表,影响到术语的展示形式,子节点以分支列于父节点下

No. Logical Name Physical Name Type Null Default Value Description
  1 tid tid MEDIUMINT(10) N 术语序号
  2 parent parent MEDIUMINT(10) N 术语父序号

term_relation (term_relation)

术语关联表

No. Logical Name Physical Name Type Null Default Value Description
  1 trid trid INT(10) N AUTO INCREMENT
关联序号
2 tid1 tid1 MEDIUMINT(10) N 术语序号1
3 tid2 tid2 MEDIUMINT(10) N 术语序号2

term_synonym (term_synonym)

术语同义词表

No. Logical Name Physical Name Type Null Default Value Description
  1 tsid tsid INT(10) N AUTO INCREMENT
同义词序号
2 tid tid MEDIUMINT(10) N 术语序号
3 name name VARCHAR(255) N 同义词名称

term_node (term_node)

节点分类表

No. Logical Name Physical Name Type Null Default Value Description
1 nid nid MEDIUMINT(10) N 节点序号
  2 vid vid MEDIUMINT(10) N 节点修订版本序号
  3 tid tid MEDIUMINT(10) N 术语

它们之间的关系可以简单描述如下图:

博客及分类关系图

猜你喜欢

转载自chen4w.iteye.com/blog/710633
今日推荐