python+django:22、删除数据提示及限制

本文介绍了Django中ForeignKey字段的on_delete参数重要性,包括CASCADE、PROTECT、SET_NULL、SET_DEFAULT、SET和DO_NOTHING六种策略的含义和使用场景。通过示例说明了不同设置在删除关联数据时的影响,特别是在数据保护和完整性方面的作用。
摘要由CSDN通过智能技术生成

ForeignKey(to,on_delete)中有两个必填的参数,to表示要关联的表,on_delete表示删除关联表数据时,此表的处理方式

on-delete的几种值:

  • models.CASCADE:关联表相关数据删除后,此数据也删除
  • models.PROTECT:删除时会引起protectederror
  • models.SET_NULL:在创建表时,该字段null值设置为True才有效,并外键表中的数据值设置为null
  • models.SET_DETAULT:只有当当前字段设置了default时才有效,并外键表中的数据值设置为default值
  • models.SET:此时需要指定set值
  • models.DO_NOTHING:什么也不做

models.py文件


class Users(models.Model):
    name = models.CharField(max_length=3,primary_key=True,verbose_name='姓名')
    age = models.IntegerField(verbose_name='年龄')
    password = models.CharField(max_length
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值