页面和 URL 映射
从客户的要求中我们知道,应用至少要有两个页面。为了能访问各个页面,我们要描述 URL 映
射。你可以把 URL 映射理解为访问页面时在浏览器地址栏中输入的文本。Rango 应用的基本
URL 映射如下:
❏ / 或 /rango/ 指向主页
❏ /rango/about/ 指向关于页面
❏ /rango/category/<category_name>/ 指向名为 <category_name> (例如 games、python-recipes
或 code-and-compilers)的分类页面
这只是开始,在构建应用的过程中,可能还要添加其他 URL 映射。本书将带领你使用 Django 框
架和“模型-视图-模板”设计模式逐渐丰富这些页面的内容。对 URL 映射和页面的设计有了大致了
解之后,我们要定义数据模型,存储应用将用到的数据。
6 - 第 1 章 导言
图 1-3:分类页面,显示分类中的网页(带有访问次数),以及搜索“Python”得到的结果
实体关系图
根据客户的要求,很明显我们至少需要两个实体:分类(category)和网页(page)。而且,一个
分类中可以有多个网页。这个简单的数据模型可以通过下述 ER 图描述。
注意,这个关系并不十分明确。理论上,一个网页可以归入多个分类。鉴于此,分类和网页之间
可以通过多对多关系建模。但是这样处理太过复杂,因此我们将假定一个分类中有多个网页,而
一个网页只能属于一个分类。这样并不妨碍把一个网页归入不同的分类,只不过要多次输入相同
的网页,不是太理想而已。