1. 示例

  1. # models.py
  2. from django.db import models
  3. class Musician(models.Model):
  4. first_name = models.CharField(max_length=100)
  5. last_name = models.CharField(max_length=100)
  6. class Album(models.Model):
  7. 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