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:
-
Project:
PyBongo -
App:
menu -
Templates folder ikiwa ndani ya
menu/ - Ndani ya app ya menu tengeneza folda liite templates kisha ndani yake tengeneza tena folda liite menu. kisha ndani yake tengeneza mafaili ya html kulingana na menu uazohitaji. Faili la base.html litahusu faili la navigation menu. faili hili litakusanya link za mafaili mengine. Mafaili mengine yametajwa hapo chini
-
Faili zifuatazo zipo:
views.py,urls.py, na templatesbase.html,home.html,about.html,contact.html,blog.html.
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 kupitiarender().
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">
...help_outlineZoezi la Maswali
Umeionaje Makala hii.. ?
Share On:
👉1 Sira ya Mtume Muhammad (s.a.w) 👉2 web hosting 👉3 Kitau cha Fiqh 👉4 Kitabu cha Afya 👉5 Bongolite - Game zone - Play free game 👉6 Dua za Mitume na Manabii
Post zinazofanana:
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 19: Aina za Function
Katika somo hili utakwend akujifunza aina mbalimbali za function ambazo tunaweza kuzitumia kwenye python.
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 4: Aina za data kwenye python
Katika somo hili utakwenda kujifunza aina za data ambazo hutumika kwenye python. hapa utajifunza aina kuu 3 za data.
Soma Zaidi...Python somo la 38: Kubadilisha landing page ya Django Framework
Katika somo hili utakwenda kujifunza jinsi ya kubadili ukurasa wa landing page wa Django na kuweka ukurasa tunaoutaka sisi.
Soma Zaidi...Python somo la 53: Kutengeneza HTML Form na Django View kwa ajili ya kuingiza data
Katika somo hili tutaangalia jinsi ya kutengeneza fomu ya HTML kwa ajili ya kuingiza data kwenye jedwali la MenuItem, pamoja na kutengeneza view itakayopokea data hiyo na kuihifadhi kwenye database. Pia tutaunganisha form na URL route.
Soma Zaidi...