为了账号安全,请及时绑定邮箱和手机立即绑定

MultipleObjectsReturned

http://img1.sycdn.imooc.com//58da6eb2000152d509380451.jpg在页面上新建一个article,数据库中有记录了,在页面再次点开的时候(如图所示,点击Title_1),报如下错误,这是什么原因。
MultipleObjectsReturned at /admin/blog/article/1/change/

get() returned more than one Article -- it returned 2!

Request Method:     GET
Request URL:     http://127.0.0.1:8000/admin/blog/article/1/change/
Django Version:     1.10.6
Exception Type:     MultipleObjectsReturned
Exception Value:     

get() returned more than one Article -- it returned 2!

Exception Location:     D:\python\python\lib\site-packages\django\db\models\query.py in get, line 389
Python Executable:     D:\python\python\python.exe
Python Version:     2.7.13
Python Path:     

['D:\\python\\colin\\Dj',
 'D:\\python\\colin\\Dj',
 'D:\\python\\python\\DLLs',
 'D:\\python\\python\\lib',
 'D:\\python\\python\\lib\\lib-tk',
 'D:\\python\\python',
 'D:\\python\\python\\lib\\site-packages',
 'C:\\windows\\system32\\python27.zip',
 'D:\\python\\python\\lib\\plat-win']

正在回答

4 回答

get() returned more than one Article -- it returned 2!,看这句话,get()是返回单个对象的,如果没有对象返回就会报<class>.DoesNotExist,如果你用get()查询且返回多个对象就会报MultipleObjectsReturned,你看下哪里查了多个对象没有,一个对象就相当于一张表,你看下代码是不是查了多个,或者返回了多个。返回了多个对象,Django自然不知道看哪个对象的信息。


1 回复 有任何疑惑可以回复我~
#1

colin1 提问者

创建新的article,id不是自增的吗
2017-03-29 回复 有任何疑惑可以回复我~

现在的问题是,我只要添加新的artice,写进sqlite中的id都是1http://img1.sycdn.imooc.com//58dd1377000182fa10590291.jpg

0 回复 有任何疑惑可以回复我~

现在的问题是,我只要添加新的artice,写进sqlite中的id都是1

0 回复 有任何疑惑可以回复我~

对,是的,问题出在两个ID都为1http://img1.sycdn.imooc.com//58db42c10001135608670170.jpg

http://img1.sycdn.imooc.com//58db436a000134b611590239.jpg

在创建的新的article的时候,ID不是自增的吗?

0 回复 有任何疑惑可以回复我~
#1

慕码人1578541

即使你不去设置主键,或者说你的models类中没有id都可以,默认会给你创建,且默认就是自增的,我是这样做的。
2017-03-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
django入门与实践
  • 参与学习       65159    人
  • 解答问题       869    个

手把手带你进入Django开发的大门,充分领略Django的魅力

进入课程

MultipleObjectsReturned

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信