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两个命令
使用源代码管理工具管理数据库的变更记录。