在实施完一个网站的内容管理之后,抽空看了drupal,我的关注点在数据库表设计。遗憾的是没有找到其数据模型的文档。所以不得不一边按教程做实例,一边观察后台数据的变化,以此试图理解其数据模型。
相关工具及用途如下:
- drupal-6.16:研究对象
- phpmyadmin:观察后台数据
- AmaterasUML:描述数据模型
drupal非常简洁地用两个表,就解决了内容的版本维护和多语种的问题。这两个表是node(内容节点)表和node_revisions(节点修订版本)表。
前者描述节点的基本属性,与一条确定的内容对应,字段含义如下:
No.
Logical Name
Physical Name
Type
Null
Default Value
Description
1
|
nid
|
nid
|
MEDIUMINT(10)
|
N
|
|
AUTO INCREMENT
节点id
|
2
|
vid
|
vid
|
MEDIUMINT(10)
|
N
|
|
当前版本id
|
3
|
type
|
type
|
VARCHAR(32)
|
N
|
|
节点类型
|
4
|
language
|
language
|
VARCHAR(12)
|
N
|
|
语种
|
5
|
title
|
title
|
VARCHAR(255)
|
N
|
|
题名
|
6
|
uid
|
uid
|
INT(10)
|
N
|
|
节点编辑用户id
|
7
|
status
|
status
|
INT(10)
|
N
|
|
状态
|
8
|
created
|
created
|
INT(10)
|
N
|
|
建立时间
|
9
|
changed
|
changed
|
INT(10)
|
N
|
|
修改时间
|
10
|
comment
|
comment
|
INT(10)
|
N
|
|
评论设置
0:禁止新的评论,并隐藏已有评论
1:禁止新的评论,但显示已有的评论
2:允许评
论,并显示已有评论
|
11
|
promote
|
promote
|
INT(10)
|
N
|
|
推荐首页
|
12
|
moderate
|
moderate
|
INT(10)
|
N
|
|
评论设置
|
13
|
sticky
|
sticky
|
INT(10)
|
N
|
|
??
|
14
|
tnid
|
tnid
|
MEDIUMINT(10)
|
N
|
|
翻译的源节点
|
15
|
translate
|
translate
|
INT(10)
|
N
|
|
已翻译
|
后者记录节点的各个修改版本。字段含义如下:
No.
Logical Name
Physical Name
Type
Null
Default Value
Description
1
|
nid
|
nid
|
MEDIUMINT(10)
|
N
|
|
节点id
|
2
|
vid
|
vid
|
MEDIUMINT(10)
|
N
|
|
AUTO INCREMENT
节点版本
|
3
|
uid
|
uid
|
INT(10)
|
N
|
|
编辑节点的用户id
|
4
|
title
|
title
|
VARCHAR(255)
|
N
|
|
题名
|
5
|
body
|
body
|
LONGTEXT
|
N
|
|
正文
|
6
|
teaser
|
teaser
|
LONGTEXT
|
N
|
|
正文摘要
|
7
|
log
|
log
|
LONGTEXT
|
N
|
|
日志备注
|
8
|
timestamp
|
timestamp
|
INT(10)
|
N
|
|
创建时间
|
9
|
format
|
format
|
INT(10)
|
N
|
|
格式
|
node_revisions通过表中的nid指向node中的多版本对应的同一个内容节点。
node则通过tnid指向多语种翻译对应的源节点,可以图示如下:
附件是AmaterasUML生成的html格式的数据库表说明。
- 大小: 9.4 KB
分享到:
相关推荐
综上所述,Drupal的评论功能是其数据模型的重要组成部分,它涉及内容类型、字段、实体、模块、工作流、关系、钩子、视图、权限等多个方面。理解这些概念对于构建交互性强、用户参与度高的网站至关重要。通过深入学习...
这通常涉及下载最新版本的Drupal核心文件,设置一个符合要求的服务器环境(如LAMP或WAMP),将Drupal文件上传到服务器,然后通过浏览器运行安装向导。安装过程中,你需要配置数据库连接、网站基本信息以及管理员账号...
### Drupal 7 与 Drupal 6 版本修改内容 #### 概述 Drupal 是一个开源的内容管理系统(CMS),被广泛用于构建各种类型的网站。从 Drupal 6 升级到 Drupal 7,Drupal 社区引入了大量的改进和新功能,以提高用户体验...
Drupal 7.x 小版本升级是一个常规的维护过程,旨在确保你的网站持续获得安全更新和新功能。在 Drupal 社区,小版本升级通常是指从7.0到7.1,7.1到7.2等这样的升级,不涉及重大功能变更。下面详细解释这个过程: 1. ...
Drupal是世界上最受欢迎的内容管理系统之一,尤其在企业级网站和复杂Web应用中被广泛采用。"Drupal-7.x"是Drupal的第七个主要版本,它带来了许多改进和新特性,旨在提升用户体验、开发者效率以及网站的可扩展性。在...
2. **数据模型**:Drupal使用Content Type来定义不同的数据模型,比如文章、页面或产品。每个Content Type由一系列字段组成,这些字段决定了数据的结构和类型。 3. **数据查询**:Drupal的Query API允许开发者编写...
在本文中,我们将深入探讨Drupal 6的安装过程以及与之相关的知识点。 **一、Drupal 6的安装** 1. **系统需求**:Drupal 6运行在PHP 5.2.4或更高版本上,同时需要MySQL 4.1.20或更高版本作为数据库支持。确保你的...
- **第8章:升级至Drupal 6**——提供关于从旧版本迁移到Drupal 6的具体步骤和建议。 - **第9章:再次审视升级至Drupal 6**——进一步探讨升级过程中的常见问题及其解决方案。 4. **第四部分:充分利用Drupal 6.x...
总之,《Drupal7权威指南》是每一位致力于Drupal7平台开发与应用的专业人士不可或缺的宝典,它不仅提供了详实的技术指导,更传递了Drupal精神——开放、协作与创新。通过遵循本书的指导,你将能够以最高效的方式,...
2. **安装与配置**:学习如何在本地或服务器上安装Drupal,包括下载最新版本、设置数据库连接、选择语言以及完成初始配置。熟悉Drupal的更新和安全维护过程,确保网站的安全性。 3. **内容管理**:掌握如何创建、...
在Drupal中,数据库设计是其核心功能之一,因为它存储所有网站内容、用户信息、权限设置等关键数据。"drupal数据库设计图"是理解Drupal工作原理的重要工具,通过这张图,我们可以直观地看到数据库结构,帮助开发者更...
Drupal7是该系列中的一个稳定版本,在此版本中,多语言支持得到了显著增强,使其成为搭建国际化网站的理想选择。 #### 二、多语言网站搭建的重要性 随着全球化的发展,越来越多的企业和个人希望他们的网站能够覆盖...
#### Drupal——水滴般灵动的CMS系统 在当前互联网时代,网站构建已不再是复杂的技术难题,尤其是当诸如Drupal这样的内容管理系统(CMS)出现后,网站建设变得异常便捷。Drupal,这个源自荷兰语Druppel(意为水滴)...
Drupal 9.0.1是Drupal内容管理系统的一个重要版本,带来了许多新特性和改进,旨在提升网站构建者的体验和网站的性能。Drupal是一款开源的PHP框架,被广泛用于创建复杂、可扩展的Web应用程序和网站。这个9.0.1版本的...
Drupal是一款强大的开源内容管理系统,广泛用于构建复杂且功能丰富的网站。"Drupal入门第一步"这个主题主要涵盖以下几个关键知识点: 1. **XAMPP的安装与设置**:XAMPP是一个集成开发环境,包含了Apache服务器、...
7.23 版本允许用户创建不同类型的自定义内容类型,如文章、页面、图像、视频等,并支持元数据、字段和多语言功能。 3. **主题系统**:Drupal 提供了灵活的主题系统,允许设计师使用 HTML、CSS 和 JavaScript 创建...
Drupal是一款强大的开源内容管理系统(CMS),广泛用于构建各种类型的网站,包括博客、企业网站、社区论坛等。本教程将深入探讨Drupal的安装与升级过程,帮助你熟练掌握这个平台。 一、Drupal安装 1. 环境准备:在...