设计数据结构
最后更新:2026年6月22日
要构建一个博客服务,首先需要定义将要处理哪些数据。仅仅搭建好页面,服务是无法运转的。文章的正文、图片、附件等信息以何种形式存储和管理,必须经过清晰的设计。
确定文章需要哪些内容
本示例中要构建的 Tech Blog 是一个把所写文章传递给访客的服务。因此,每一篇文章都以文本为核心组成,并且要能够根据需要插入图片或附加文件。此外,还要能够把多篇文章按最新顺序排列展示,并能将特定文章设置为不向外公开。在此基础上,还需要按主题对文章进行分类的类别。
归纳起来,我们要创建的文章应当具备以下内容。
- 基于文本的正文
- 图片与附件
- 按创建时间排序
- 公开与否的设置
- 类别分类
Content Type:数据的设计图
在 WEEGLOO 中,要定义这样的数据结构,会使用名为 Content Type 的资源。Content Type 是一种“数据设计图”。它是预先确定要创建的数据具有哪些项目(Field)的模板。每一篇文章都是遵循这个模板的 Content。也就是说,Content Type 确定数据的形态,而 Content 则是按这个形态创建出来的实际数据。
现在前往 Content Type 页面,创建一个新的 Content Type。名称设为 Article。这个 Content Type 将成为今后表示每一篇博客文章的基准。
- 在左侧菜单中点击 Content Types。
- 点击右上方的 Create。
- 在名称栏中输入
Article,然后点击 Continue。

配置文章的 Field
创建 Content Type 之后,逐个添加文章所需的 Field。Field 是构成文章的数据项目,每个 Field 都会一并确定要存放何种类型的值以及是否必填等。
按如下方式配置五个 Field。
| Field | 类型 | 列表类型 | 必填 |
|---|---|---|---|
title | Short Text | 否 | 是 |
body | Long Text | 否 | 是 |
images | Media | 是 | 否 |
attachments | Media | 是 | 否 |
category | Short Text | 否 | 是 |
title是文章的标题。因为是简短的一行,所以用 Short Text 类型接收;因为不能为空,所以设为必填。body是实际的正文。因为是段落较长的内容,所以采用 Long Text 类型,同样指定为必填。images可以放入一张以上,所以将 Media 类型设置为作为列表类型使用。并且为了只能上传图片文件,将允许的种类限制为图片。attachments同样将 Media 类型设为列表,但因为没有也可以,所以从必填中去除。category是对文章进行分类的 Field。用 Short Text 类型接收并设为必填。此外,为了只能选择规定的值,将可输入的值限制为Web、Mobile、Server、News四种。

这样定义好 Content Type 之后,就可以基于这个结构创建实际的文章数据。关于确定 Field 的类型、列表、必填、有效性条件的方法,在 Content 建模中有更详细的介绍。
现在数据结构已经准备就绪,在下一步中,我们将基于这个结构创建实际的文章。
- 添加数据:创建并发布遵循
Article结构的实际文章。
