Django学习笔记(5)

DjangoModels

迁移

  • 分两步实现
    • 生成迁移文件
    • 执行迁移文件
  • 迁移文件的生成
    • 根据models文件生成对应的迁移文件
    • 根据models和已有迁移文件的差别,生成新的迁移文件
  • 执行迁移文件
    • 先去迁移记录中查找,哪些文件未迁移过
      • app_label + 迁移文件名字
    • 执行未迁移文件
    • 执行完毕,记录执行过的迁移文件
  • 重新迁移
    • 删除迁移文件
    • 删除迁移文件产生的表
    • 删除迁移记录

模型关系

  • 1:1
    • 应用场景
      • 用于复杂表拆分
      • 拓展新功能
    • Django中OneToOneField
      • 使用的时候,关系声明有细微差别
    • 实现
      • 使用外键实现
      • 对外键添加唯一约束
    • 数据删除
      • 级联表
        • 主表
        • 从表
      • 默认特性(CASECADE)
        • 从表数据删除,主表不受影响
        • 主表数据删除,从表数据直接删除
      • PROTECT 受保护
        • 开发中为了防止误操作,通常设置为此模式
        • 主表如果存在级联数据,删除动作受保护
        • 主表不存在级联数据,可以删除成功
      • SET
        • SET_NULL
        • SET_DEFAULT
        • SET()
  • 1:M

  • M:N
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值