django - 生成系列数字时遇到错误
问题描述
在用户将发布的每篇文章中,我希望从 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()})
解决方案
DjangoQuerySet.aggregate
返回一个字典。要获取max_val
您需要访问聚合中生成的密钥
max_val = Documents.objects.all().aggregate(Max('pay_no'))['pay_no__max']
推荐阅读
- github - 如何删除 GitHub 项目?
- javascript - 如何从新的 Google Apps 脚本 IDE 下载脚本?
- python-3.x - 使用 Pandas 比较 2 个 csv 文件
- typescript - 插槽道具和打字稿,如何处理类型?
- reactjs - 将渐变应用到 Material UI 的主题背景
- javascript - 一次全部选中时将事件侦听器添加到复选框
- python - 最佳检查列表的元素是否在python中的另一个列表中
- c - 在 OpenCL 中计算单个位?
- php - 如何阻止 Ajax 成功(响应)在我的页面上显示整个 html 结构元素
- amazon-web-services - 我如何访问亚马逊 ec2 服务器