首页 > 解决方案 > 生成系列数字时遇到错误

问题描述

在用户将发布的每篇文章中,我希望从 Integer 字段中生成数字。我遇到了名为“TypeError:+ 的不支持的操作数类型:'dict' 和 'int'”的错误

我将如何摆脱这个错误?

视图.py

 @login_required
def Claim(request):
    max_val = Documents.objects.all().aggregate(Max('pay_no'))

    # then just make new object, and assign max+1 to 'that_field_in_question'
    control_number = Documents(pay_no=max_val + 1)
    control_number.save()

    return render(request,"loststuffapp/claim.html",context={"documents":Documents.objects.all()})

标签: djangopython-3.x

解决方案


DjangoQuerySet.aggregate返回一个字典。要获取max_val您需要访问聚合中生成的密钥

max_val = Documents.objects.all().aggregate(Max('pay_no'))['pay_no__max']

推荐阅读