我在做一个项目,遇到了一个问题。我在一个queryset中循环,for循环只运行了一次,没有给出任何错误。这个问题以前没有发生,但现在不知从哪里冒出来了。下面是我的代码
views.py
ward = Student.objects.get(id = request.POST.get('ward'))
request.session['student'] = request.POST.get('ward')
fees = Fee.objects.get(classes = ward.classes)
extras = ExtraFee.objects.filter(student = ward)
ex = ExtraFee.objects.filter(student = ward).values('title').annotate(Count('title'))
print(ex)
for e in ex:
print(e)
title = e['title']
if e['title__count'] > 1:
print(title)
extra = ExtraFee.objects.filter(title = e['title'], student = ward)
amount = 0
fine = 0
for ex in extra:
amount = int(ex.amount) + amount
total = amount
for exs in extras:
fine = int(exs.amount) + fine
totalfine = fine
return render(request, "dashboard/parent_fees.html", {"students": students, "parent": parent, "ward": ward, "fees": fees, "extras": extras, "totalfine": totalfine, "total": total, "title": title})
else:
fine = 0
for e in extras:
fine = int(e.amount) + fine
totalfine = fine
return render(request, "dashboard/parent_fees.html", {"students": students, "parent": parent, "ward": ward, "fees": fees, "extras": extras, "totalfine": totalfine})
提前感谢您的时间和帮助
在循环中使用一个返回,即使迭代还没有完成,也会打断它并退出方法/函数
因此,除非您知道自己在做什么,否则不要在循环中使用“return”
相关问题 更多 >
编程相关推荐