请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

权限报错!!!

users = User.objects.filter(Q(groups__permissions=b_permission) | Q(user_permissions=b_permission)).distinct()#报错

ValueError: The QuerySet value for an exact lookup must be limited to one result using slic
ing.
麻烦请老师帮忙看看,找了一下午没找到问题

正在回答

2回答

https://stackoverflow.com/questions/56150224/djangothe-queryset-value-for-an-exact-lookup-must-be-limited-to-one-result-usin   你参考一下这个帖子, 如果打不开 下边是解决的方式:


I think this is the problem:

obj= Create_Team.objects.filter(status='Accept', managers=manager.objects.filter(user__email=email))

if you want to filter by one manager you have to use get instead of filter:

obj= Create_Team.objects.filter(status='Accept', managers=manager.objects.get(user__email=email))

But if you want to filter by several managers you need to use __in:

obj= Create_Team.objects.filter(status='Accept', managers__in=manager.objects.filter(user__email=email))

Also you are passing {"object": obj}) to template but in templare you are trying to iterate over team. So change it to pass team variable:

return render(request, "manager/accept_team.html", {"team": obj})


0 回复 有任何疑惑可以回复我~
  • 提问者 weixin_慕勒0552695 #1
    老师,非常感谢您给出的解决方案,问题已经找到了,在users = User.objects.filter(Q(groups__permissions=b_permission) |
                                        Q(user_permissions=b_permission)).distinct()这里面的groups__permissions和user_permissions接收的必须是一个对象,而不是一个查询集 b_permission = Permission.objects.get(codename='look_b_page')
    回复 有任何疑惑可以回复我~ 2020-08-17 16:09:39
  • deweizhang 回复 提问者 weixin_慕勒0552695 #2
    这个还真是 我也学习了 我记得当时好像我也遇到过 不提真想不起来
    回复 有任何疑惑可以回复我~ 2020-08-17 16:14:15
deweizhang 2020-08-16 21:58:52

你好 我手头没有电脑 你可以百度 django 后边加上你的错误 查查 如果没有结果 我明天有设备后帮你查一下

0 回复 有任何疑惑可以回复我~
  • 提问者 weixin_慕勒0552695 #1
    user和user所在组同时拥有look_b_page权限会导致这个错误吗,还麻烦老师明天有时间的话帮忙看下,我还在查,没查到原因/(ㄒoㄒ)/~~
    回复 有任何疑惑可以回复我~ 2020-08-16 22:02:08
  • 你这个错误我也没遇到过 而且最近一年都没有用django 也要查一下 判断是哪里query写的有问题 在上边发现limit 数量限制 是否是你定义的权限超过了限制 或者有冲突现象。有时候不好查的时候建议清表 重新加数据试试
    回复 有任何疑惑可以回复我~ 2020-08-16 22:05:09
  • 我感觉是业务冲突~
    回复 有任何疑惑可以回复我~ 2020-08-16 22:06:06
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号