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

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>
    <meta charset="UTF-8">
   ...
Ingia sasa ili uweze kusoma makala hii yote.

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 Ni kazi gani inayofanywa na render() katika Django?
3 Katika URL pattern path('about/', views.about, name='about'), neno 'about/' linawakilisha nini?
4 Viungo vya HTML kama <a href="/contact/">contact</a> vina kazi gani?
5 Katika views.py, mstari huu unamaanisha nini? return render(request, 'menu/home.html')

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu Rajabu
Tarehe: 2025-05-15 20:03:06 Topic: Python Main: Masomo File: Download PDF Views: 872

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 Simulizi za Hadithi Audio     👉2 kitabu cha Simulizi     👉3 Tafasiri ya Riyadh Swalihina     👉4 Kitabu cha Afya     👉5 Bongolite - Game zone - Play free game     👉6 Madrasa kiganjani    

Post zinazofanana:

Python somo la 42: Template tag

Katika somo hili utakwenda kujifunza kuhsu Template Tag nini na kazi zake. Pia utajifunza sheria za uandishi wake.

Soma Zaidi...
Python somo la 33: Jinsi ya kupata taarifa za faili

Katika somo hili utakwend akujifunz anamna ya kuwez akupata taarifa zinazohusu faili

Soma Zaidi...
Python somo la 49: Jinsi ya ku host project ya Django

Katika somo hili utakwenda kujifunza jinsi ya ku host website ya Django. Hapa tutakwenda kutuma plaform ya pythonanywhere.com.

Soma Zaidi...
PYTHON - somo la 2: Sheria za uandishi wa pyhton yaani syntax za python

Katika somo hili utakwenda kujifunza syntaxy za python yaani sheria na kanuni za kuandika code za python

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...
Python somo la 30: Data abstraction

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

Soma Zaidi...