picha

Python somo la 40: Jinsi ya Kuunda Simple Navigation Menu Katika Django

Katika somo hili utajifunza Jinsi ya Kuunda Simple Navigation Menu Katika Django kwa kutumia template

Utangulizi

Katika maendeleo ya tovuti kwa kutumia Django, navigation menu ni kipengele muhimu kinachowezesha watumiaji kuvinjari kurasa mbalimbali kwa urahisi. Katika somo hili, tutajifunza jinsi ya kuunda menu rahisi ya kurasa kama Home, About, Contact, na Blog, tukitumia pure HTML templates bila kuongeza CSS wala JavaScript.

Tutaendelea na app yetu ya menu ndani ya project ya PyBongo, ambapo tayari views na URL patterns zimeandaliwa. Lengo kuu ni kujenga msingi imara wa muonekano wa tovuti kabla ya kuongeza vipengele vya juu zaidi kama template inheritance na styling.


Mahitaji ya Awali

Hakikisha yafuatayo yako tayari katika mradi wako wa Django:


Muundo wa View Functions (menu/views.py)

Faili ya views.py ina functions zinazohusiana na kila ukurasa wa tovuti. Kila moja inarejesha template husika kwa kutumia render():

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
def index(request):
    return render(request, 'menu/base.html')

def home(request):
    return render(request, 'menu/home.html')

def about(request):
    return render(request, 'menu/about.html')

def blog(request):
    return render(request, 'menu/blog.html')

def contact(request):
    return render(request, 'menu/contact.html')

Kila function ni view ya Django inayopokea ombi (request) na kurudisha template ya HTML kupitia render().


URL Patterns (menu/urls.py)

Hizi ndizo njia zinazowezesha kurasa kupatikana kupitia anwani tofauti:

from django.urls import path
from .import views

urlpatterns = [
    path('', views.index, name='index'),
    path('home/', views.home, name='home'),
    path('contact/', views.contact, name='contact'),
    path('blog/', views.blog, name='blog'),
    path('about/', views.about, name='about'),
]

Anwani kama 127.0.0.1:8000/contact/ itafungua ukurasa wa mawasiliano.


Kuandaa Navigation Menu (menu/base.html)

Faili ya base.html ndiyo msingi wa tovuti yetu. Tumeweka viungo (links) vya moja kwa moja kwa kila ukurasa:

<!DOCTYPE html>
<html lang="en">
<head">
...

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

help_outlineZoezi la Maswali

info Jaza maswali yote au baadhi kisha bofya kitufe cha kutuma majibu hapo chini.
1 Kwa nini tunatengeneza template tofauti kwa kila ukurasa kama home.html, about.html, nk?
2 Katika URL pattern path('about/', views.about, name='about'), neno 'about/' linawakilisha nini?
3 Viungo vya HTML kama <a href="/contact/">contact</a> vina kazi gani?
4 Ni kazi gani inayofanywa na render() katika Django?
5 Katika views.py, mstari huu unamaanisha nini? return render(request, 'menu/home.html')

Nyuma Endelea


Umeionaje Makala hii.. ?

Nzuri            Mbaya            Save
Author: Rajabu image Tarehe: 2025-05-15 Topic: Python Main: ICT File: Download PDF Views 611

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
๐Ÿ‘‰1 ai web app    ๐Ÿ‘‰2 Kitau cha Fiqh    ๐Ÿ‘‰3 kitabu cha Simulizi    ๐Ÿ‘‰4 Sira ya Mtume Muhammad (s.a.w)    ๐Ÿ‘‰5 Dua za Mitume na Manabii    ๐Ÿ‘‰6 Bongolite - Game zone - Play free game   

Post zinazofanana:

Python somo la 25: Sheria za uandishi wa class

Katika somo hili utajifunza maana ya class, sheria za uandishi wake na mifano halisi

Soma Zaidi...
Python somo la 43: Kutuma Data kutoka View kwenda Template katika Django

Katika somo hili uatajifunza jinsi gani unaweza kutumia view kma logic kuuma data kwenye template

Soma Zaidi...
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.

Soma Zaidi...
Python somo la 58: Jinsi ya Kuboresha Django Admin

Katika somo hili tutajifunza mambo matatu muhimu ya kuboresha admin ya Django: Jinsi ya kubadili header za Django Admin Jinsi ya kuongeza columns zinazojitokeza kwenye admin list Jinsi ya kuweka limit ya rows zinazoonekana kwa kila ukurasa (pagination)

Soma Zaidi...
Python somo la 32: Jinsi ya kusoma mafaili

Katika somo hili utakwenda kujifunz ajinsi ya kusoma mafaili na mitindo mbalimbali ya kusoma data

Soma Zaidi...
Python seomo la 55: Kutengeneza Simple Admin Dashboard ya CRUD

Katika somo hili tutajifunza jinsi ya kuunda dashboard rahisi ndani ya Django ambayo itaruhusu mtumiaji kuongeza, kusoma, kuhariri na kufuta taarifa za MenuItem bila kutumia Django built-in admin, bali kwa kutumia HTML templates na views tulizotengeneza sisi wenyewe.

Soma Zaidi...
Python somo 57: Matumizi ya Python shell

Katika somo hili, tutajifunza: Maana ya Python shell na umuhimu wake. Tofauti kati ya shell na terminal ya kawaida. Matumizi ya shell, hususan kwenye Django. Amri muhimu zaidi za Python shell, zilizotokana na models na views zako za pybongo.

Soma Zaidi...
Python somo la 60: Hashing na Encryption kwenye Django

Katika somo hili tutajifunza: Tofauti kati ya hashing na encryption Jinsi ya kufunga packages muhimu Jinsi ya kufanya hashing kwa maneno ya kawaida (mfano โ€œbongoclassโ€) Jinsi ya kufanya encryption na decrypt kutumia Fernet Jinsi Django inahash password kupitia User model Mazoezi ya vitendo

Soma Zaidi...
Python somo la 27: polymorphism kwneye python

Katika somo hili utajifunza maana ya polymorphism na sheria za uandishi wake

Soma Zaidi...
Python somo la 15: Jinsi ya kutumia while loop

Katika somo hili tutakwend akujifunza jinsi ya kutumia while loop kwneye python

Soma Zaidi...