django 中新添加外键后一直报错

在模型中添加了外键,然后一直显示**_id无数值

原因在于在model中新添加字段,没有写进数据库

正确操作为:


首先,进入开发环境(也就是说,不是在发布环境里):

1.在你的模型里添加字段。

2.运行 manage.py sqlall [yourapp] 来测试模型新的 CREATE TABLE 语句。 注意为新字段的列定义。

3.开启你的数据库的交互命令界面(比如, psqlmysql , 或者可以使用 manage.py dbshell )。 执行 ALTER TABLE 语句来添加新列。

4.使用Python的manage.py shell,通过导入模型和选中表单(例如, MyModel.objects.all()[:5] )来验证新的字段是否被正确的添加 ,如果一切顺利,所有的语句都不会报错。

然后在你的产品服务器上再实施一遍这些步骤。

1.启动数据库的交互界面。

2.执行在开发环境步骤中,第三步的ALTER TABLE语句。

3.将新的字段加入到模型中。 如果你使用了某种版本控制工具,并且在第一步中,已经提交了你在开发环境上的修改,现在,可以在生产环境中更新你的代码了(例如,如果你使用Subversion,执行svn update

4.重新启动Web server,使修改生效。

参考:http://djangobook.py3k.cn/2.0/chapter10/

 

转载于:https://www.cnblogs.com/tongyan/p/4086291.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值