picha

Python somo la 59: Kufanya Mahesabu (Aggregations) Katika Django

Katika somo hili tutajifunza jinsi ya kutumia Django ORM kufanya mahesabu mbalimbali kama Sum, Avg, Count, Max, Min, pamoja na kupunguza idadi ya items zinazoonekana kwenye dashboard (LIMIT). Pia tutajifunza namna ya kutengeneza “difference” kati ya thamani kubwa na ndogo bila kubadilisha functions zozote ulizokwisha ziandika.

Utangulizi

Katika kazi za mifumo, mara nyingi tunahitaji kuonyesha takwimu kama jumla ya bei, wastani, au idadi ya vitu. Django inatoa njia rahisi kupitia ORM bila kuandika SQL moja kwa moja. Somo hili litakuonyesha hatua kwa hatua jinsi ya kupata mahesabu hayo kutoka kwenye jedwali la MenuItem.

 

1. Kutumia Django Aggregation Functions

Django inatoa method maalumu kwa ajili ya mahesabu:

Tunaziingiza kwa:

from django.db.models import Avg, Sum, Count, Max, Min

2. Kupata Mahesabu Kutoka Kwenye Model

Mfano tukitumia model yako:

MenuItem.objects.aggregate(Sum('bei'))

Lakini matokeo huja kama dictionary:

{'bei__sum': 45000}

Kwa hiyo tunachukua thamani moja kwa moja:

jumla = MenuItem.objects.aggregate(Sum('bei'))['bei__sum']

Vivyo hivyo kwa mahesabu mengine:

wastani = MenuItem.objects.aggregate(Avg('bei'))['bei__avg']
idadi = MenuItem.objects.aggregate(Count('id'))['id__count']
bei_kubwa = MenuItem.objects.aggregate(Max('bei'))['bei__max']
bei_ndogo = MenuItem.objects.aggregate(Min('bei'))['bei__min']

3. Kutengeneza Difference (Tofauti ya Bei Kubwa – Bei Ndogo)

Kwa kuwa baadhi ya data inaweza kuwa tupu (None), tunalinda kwa kutumia or 0:

tofauti = (bei_kubwa or 0) - (bei_ndogo or 0)

4. Kuweka Limit ya Items (LIMIT kama SQL)

Kama tunataka kuonyesha item 10 tu, tunatumia slicing:

items = MenuItem.objects.all()[:10]

Hii haiathiri data wala pagination, ni limit ya kuonyesha tu.


5. Dashboard View Kamili Bila Kugusa Methods Zako Zingine

Hii ndiyo view ambayo unaweza kuitumia bila kubomoa code zako zilizopo:

...

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

Nzuri            Mbaya            Save
Author: Rajabu image Tarehe: 2025-11-26 Topic: Python Main: ICT File: Download PDF Views 422

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 Kitau cha Fiqh    👉2 Kitabu cha Afya    👉3 kitabu cha Simulizi    👉4 Bongolite - Game zone - Play free game    👉5 web hosting    👉6 ai web app   

Post zinazofanana:

Python somo la 30: Data abstraction

Katika somo hili utakwend akujifunz akuhusu nadharia ya data abstraction na kazi zake kwenye OOP

Soma Zaidi...
Python somo la 62 Kupakia picha (upload) na kuisoma kutoka kwenye database

Katika somo hili utakwenda kujifunza jinsi ya kushughulika na faili, kama ku upload faili kwenye django.

Soma Zaidi...
Python somo la 21: Module katika python

Katika somo hili utakwend akujifunz amaana ya module, kazi zake, aina zake na jinsi ya kuandika modile

Soma Zaidi...
Python somo la 17: Jinsi ya kutumia user input

Katika somo hili uatkwenda kujifunz anamna ambavyo mtu anaweza kuingiza input kwneye system

Soma Zaidi...
Python somo la 31: Jinsi ya kutengeneza faili na folder

Katika somo hili utajifunz ajinsi ya kutengeneza folda, faili na kuweka data kwneye faili

Soma Zaidi...
Python somo la 37: Jinsi ya ku install Django na kutengeneza project na app

Katika somo ili utajifunza hatuwa kwa hatuwa za ku install Django, kutengeneza project na kutengeneza app

Soma Zaidi...
Python somo la 16: Jinsi ya kutumia break na continue kwenye loop

Katika somo hili tunakwenda kujifunza matumizi ya break na continue kwenye loop

Soma Zaidi...
Pthon somo la 41: Template Inheritance katika Django

Somo hili linazungumzia hatua ya kuunda navigation menu na kutumia template inheritance kwa njia ya kitaalamu katika Django.

Soma Zaidi...
PYHON - somo la 5: Aina za data list, turple, dictionary na boolean

Katika somo hili tunakwenda kujifunza aina nyingine za data ambazo hutumika kwenye python.

Soma Zaidi...
PYTHON - somo la 7: Jinsi ya kubadili aina ya data

Katika soo hili utakwenda kujifunza jinsi ya kubaduli aina moja ya data kwena aina nyingine. Kwa mfano unaweza kubadili namba kuwa string ama kubadili string kuwa nanda ama kubadili float kuwa int.

Soma Zaidi...