1. 示例
# models.py
from django.db import models
class Musician(models.Model):
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
class Album(models.Model):
artist = models.ForeignKey(Musician, on_delete=models.CASCADE)
1.1. 关键点
- 内置字段类型(比如:
CharField
) - 可选参数(比如:
max_length
)
2. 模型理解
2.1. 一个模型 = 一个类
django.db.models.Model
的子类- 单独、确定的数据信息源 = 映射一个数据表
- 包含:字段(+参数) + 操作方法
- 属性 = 字段 = 数据表一列
- 字段名不能与 Py关键字 冲突
- 字段名最多 一个 _
2.2. 注意
- 模型的增删修改
- 每次对模型进行增删修改时需要执行:
$ python manage.py makemigrations
- 保存记录,方便 github 等
- 应用到数据库
$ python manage.py migrate
- 自动生成的内容:
- 表名
appname_classname
- 默认创建 主键 id
- 数据库访问API