django models.py: TypeError: __init__() got an unexpected keyword argument ‘to‘

在django中models.py建立数据库表的时候,migration时候遇到了报错:
TypeError: init() got an unexpected keyword argument ‘to’
“to”是在建立foreign key时候,用来和原表建立联系的,比如:

class UserInfo(models.Model):#用户信息
    username=models.CharField(verbose_name="用户名",max_length=50)
    
class blog(models.Model):
    user=models.ForeignKey(verbose_name="发布者",to="UserInfo",on_delete=models.CASCADE)

此时blog中的user,就是UserInfo中的username,一个是fk,一个是pk,用来关联两表,那么在fk中就要使用“to”来联系pk所在的表(UserInfo)。
注意fk中也要使用on_delete方法,否则也会报错。

回到报错解决:
报错原因就是多了一个“to”属性,是定义列的时候没有定义为ForeignKey。反正fk和to是一致的,要么都有,要么都没有。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值