django3.0 定义表模型并通过定义好的模型实现源代码创建数据表。
概述
模型是一个用于表示数据的Python类,包含基本的数据字段和行为。
通常一个模型就代表一张数据库表。
模型继承自django.db.models.Model,模型的每一个属性代表一个数据的字段。
定义表模型
在myapp/models.py 中定义模型
引入模型类
from django.db import models
注意:默认已经引入,如果没有就加上。
继承
模型类要继承models.Model类
创建表模型
from django.db import models
# Create your models here.
class Grades(models.Model):
""" 班级表模型 """
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=20)
boy_num = models.IntegerField()
girl_num = models.IntegerField()
create_time = models.DateTimeField()
class Students(models.Model):
""" 学生表模型 """
name = models.CharField(max_length=20)
gender = models.BooleanField(default=True)
age = models.IntegerField()
desc = models.CharField(max_length=20)
isDel = models.BooleanField(default=False)
# 设置与班级表关联外键 一对多外键设置在多的模型中
grades_id = models.ForeignKey("Grades", on_delete=models.CASCADE)
注意
模型字段是模型的类属性,它的命名不能与模型接口相同,如不能定义名为clean、save、delete等,同时字段名字中不能连续出现两个下画线,这是因为连续的两个下画线是Django数据库API的特殊语法。
创建数据表
1.生成迁移文件
python manage.py makemigrations
在migrations下生成迁移文件,此时数据库中还没有生成数据表。
2.执行迁移
python manage.py migrate
此时表已经创建完毕,不但有我们定义的表,还有一些django配置表
3.更新表文件
当数据表字段变化后,应先维护表模型,之后使用makemigrations和migrate两个命令
使用源代码管理工具管理数据库的变更记录。