코딩공부/Python Django

django Sum import 하기 / dictionary value 가져오기

integerJI 2020. 7. 2. 18:32

views.py에서 from django.db.models import Sum을 import를 해와준다.

 

sum = Timesave.objects.all().aggregate(Sum('save_date'))

 

aggregate 함수 참고하면 좋은 사이트

 

http://raccoonyy.github.io/django-annotate-and-aggregate-like-as-excel/

 

(엑셀만큼 쉬운) Django Annotation/Aggregation

Django ORM을 강력하게 만들어주는 기능 중 하나는 바로 애너테이션(annotate)과 애그리게이션(aggregate)입니다. 이 두 기능이 명쾌하게 와닿지 않아서 사용하지 못하다가, 엑셀에 빗대어 이해해보니 ��

raccoonyy.github.io

 

aggregate함수를 써서 Sum으로 묶어준다.

 

그러면 save_date의 값들을 모두 더해 sum에 넣어준다.

 

해당 sum을 print 해보면

 

{'save_date__sum': 59}

 

딕셔너리 값으로 출력이 된다.

 

이 sum을 그대로 html에 받아주면 딕셔너리 값으로 출력이 되기때문에

 

나누주어야 한다.

 

values = sum.values()



for i in values:

    print(i)



 

values에 sum의 values()값을 넣는다.

 

해당 값을 print 하면

 

dict_values([60])

 

이렇게 나오기 때문에

 

for 문을 돌려 i에 values값만 넣어주엇다.

 

그렇다면 원하는 값만 출력이 된다.

 

---

 

정리예정