django 默认ID列的问题? 400 报错 RT,DJango 默认会在DB表里加一个ID的列名,这对零开始的项目来说没什么问题。
可是如果从原有的数据库inspectdb 的话,就有问题了,有些表没有ID列,也没有主键。
一旦用objects.all()/filter()/get()等去捞数据的话,会出错或者什么也捞不到
提示 XXX表.ID 不正确,现在自己会的最简单的作坊是 在表里加一个无意义的ID列。可是我又不想改动DB
期望应用里有没有一些高级的方法可以避免此类问题,比如说 在执行all()等方法时可以设置返回的列名
e.g :objects.all().fields('name','age')之类的。求教高人了!
没有主键是不行滴######可以先备份下之前的数据库,然后逐个给没有ID的表加上ID这个列. 这个没有办法啊.
当然你也可以考虑将之前的表结构移到你的models.py中,然后指定一个新的数据库,再把你之前的数据导出,再导入到这个新的数据库, 感觉这些都应该是可行的.
没用过其它方法, 欢迎有更好的方案分享.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。