购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.2 Django模型入门

为了能够学会使用Django模型,本节通过构建一个实际的Django模型来帮助读者尽快入门。

3.2.1 定义模型

既然Django模型实现了ORM功能,那么它就是对数据库实例的描述和实现。下面,我们通过一个简单的实例进行讲解。

如果需要设计实现一个简单的个人信息模型(名称为PersonInfo),我们一般会定义这个个人信息模型的模型名称、字段名称、字段类型等参数,如表3.1所示。

表3.1 个人信息模型(PersonInfo)数据表

3.2.2 Django模型代码

根据表3.1中定义的模型数据,设计实现的Django模型代码如下:

【代码3-1】

【代码分析】

在第01行代码中,通过调用django.db模块导入了models对象(Django模型对象)。

第03~06行代码定义了一个PersonInfo类,并通过models对象调用CharField()方法定义了name(姓名)、gender(性别)和age(年龄)3个字段,且每个字段的长度不一。这3个字段(name、gender和age)都相当于类(PersonInfo)的属性。这个类属性其实就相当于实体数据库中的数据项(也称数据列)。

【代码3-1】所定义的Django模型,最终会在底层数据库中创建一张数据库表(Table),具体代码如下:

【代码3-2】

【代码分析】

在第01行代码中定义的表名称myapp_ personinfo是自动从某些模型元数据中派生出来,用户也可以自定义表名称。

在第02行代码中,id字段(索引)会被自动添加,这也是MySQL数据库自动生成的。

3.2.3 使用Django模型

定义好了Django模型,只有通知Django框架要使用该模型后,该模型才能够生效。具体方式是修改settings.py配置文件中的INSTALLED_APPS配置项,在该配置项中添加models.py文件中定义的Django模块名称。

下面举一个简单的配置例子。假如新建的Django模型位于项目中的myapp应用中,该myapp应用是通过django-admin manage.py startapp myapp命令创建的,则项目的settings.py配置文件中的INSTALLED_APPS配置项应该设置如下:

【代码3-3】

【代码分析】

在第03行代码中,myapp应用就是通过调用django-admin manage.py startapp myapp命令创建的。 Nx2YXgJDHwenrcX0mxgE4q4QbLps1mCb5dx3s+LwcE970MeERiVuHZwScyImQ9CL

点击中间区域
呼出菜单
上一章
目录
下一章
×