TypeError: __init__() missing 1 required positional argument: ‘on_delete‘ 没有留意的问题

在升级到Django 3.0后,创建Model时遇到TypeError,原因是外键关联未指定'on_delete'参数。解决方法是在所有ForeignKey字段中添加'on_delete',例如改为`ForeignKey(SomeModel, on_delete=models.CASCADE)`。了解'on_delete'的不同参数选项有助于避免此类错误。" 5908444,240220,Cisco HDLC与SLARP协议详解,"['网络协议', 'cisco', '数据链路层', '地址解析']
摘要由CSDN通过智能技术生成

背景

Django3.0 中创建Model时报以下错误

TypeError: init() missing 1 required positional argument: ‘on_delete’

原因

django 升级到2.0之后,表与表之间关联的时候,必须要写on_delete参数,否则会报异常

解决办法

找到有外键关联的地方 ForeignKey 加入on_delete:如
原来的:

models.ForeignKey(Contract)

修改为

models.ForeignKey(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值