Django模型与数据库相关,与数据库相关的代码一般写在models.py中。
Django支持sqlite3, MySQL,PostgreSQL等数据库,只需要在settings.py中配置即可,不用修改models.py的代码。
首先我们新建一个名为learn_models的项目,在其中新建一个people的app并添加到settings。
7-1 修改models.py
将people/models.py改为:
from django.db import models
class Person(models.Model):
name = models.CharField(max_length = 30)
age = models.IntergerField()
新建了一个Person的类,继承自models.Model,包含了人的姓名和年龄
(这里用到了两种Field)
7-2 创建数据表
首先同步一下数据库(这里使用默认数据库SQLite3,无需配置)
进入manage.py所在的文件夹,执行
python manage.py makemigrations
python manage.py migrate
Django生成了一系列表,包括我们新建的people_person这个表
以后当修改了models.py之后都记得运行这两行命令,这两行命令会对models.py进行检测,自动发现需要更改的,并应用到数据库中
7-3 使用Django提供的QuerySet API
执行指令:
python manage.py shell
新建一个用户Youzhu,
使用 .object.get()函数来查询它,
注意到查询结果中并没有显示出Youzhu的相关信息,如果用户多了就无法知道查询出来的是谁以及查询结果是否正确,为解决这个问题我们将people/models.py的Person类中新定义函数:
def __str__(self):
return self.name
CTRL+C退出当前shell,重复上述操作:
教程链接:Django 模型(数据库)