picha

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.

Utangulizi

Leo tutaendelea na mchakato wa kuingiza data kwenye jedwali la MenuItem kwa kutengeneza HTML form pamoja na view ya kushughulikia data kutoka kwenye fomu hiyo.


Sasa tuingie kwenye somo


1. Kutengeneza Django Form Class (recommended)

Badala ya kuandika HTML form manually, Django hutupatia “Form class” ambayo ni salama, rahisi, na ina-validations.

➡️ Unda faili forms.py ndani ya app yako:

forms.py

from django import forms
from .models import MenuItem

class MenuItemForm(forms.ModelForm):
    class Meta:
        model = MenuItem
        fields = ['jina', 'maelezo', 'muda_upatikanaji', 'bei']

Hii Form class ndiyo itatusaidia kutengeneza HTML form moja kwa moja.


2. Kutengeneza View ya Kupokea Data

Unda view ambayo itaonyesha form na pia kupokea data kutoka kwa user.

views.py

from django.shortcuts import render, redirect
from .forms import MenuItemForm

def ongeza_menu_item(request):
    if request.method == 'POST':
        form = MenuItemForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('menu_success')
    else:
        form = MenuItemForm()

    return render(request, 'ongeza_menu.html', {'form': form})

Maelezo muhimu:


3. Kutengeneza URL Route

Fungua urls.py ya app yako:

from django.urls import path
from . import views

urlpatterns = [
    path('ongeza/', views.ongeza_menu_item, name='ongeza_menu'),
    path('success/', views.menu_success, name='menu_success'),
]

Kisha tengeneza success view:

def menu_success(request):
    return render(request, 'success.html')

4. Kutengeneza Template File (HTML Form)

Unda faili ongeza_menu.html ndani ya folder templates/:

<!DOCTYPE html>
<html>
<head>
    <title>Ongeza Menu Item</title>
</head>
<body>

<h2>Ongeza Bidhaa Mpya</h2>

<form method="POST">
    {% csrf_token %}
    {{ form.as_p }}

    <button type="submit">Hifadhi</button>
</form>

</body>
</html>

{{ form.as_p }} ina-generate HTML form full kwa kutumia Django Form class tuliyotenge">...

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

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

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 Simulizi za Hadithi Audio    👉2 Kitabu cha Afya    👉3 Dua za Mitume na Manabii    👉4 Kitau cha Fiqh    👉5 Tafasiri ya Riyadh Swalihina    👉6 kitabu cha Simulizi   

Post zinazofanana:

Python somo la 35: Jinsi ya kutumia MYSQL kwenye python

Katika somo hili utajifunz akutumia database kwenye python

Soma Zaidi...
Python somo la 22: Package kwenye Python

Hapa utakwenda kujifunz amaana ya package, aina zake na jinsi ya kuandika package.

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 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 56: Kuongeza Data Katika Database kwa Kutumia Django Admin na Django Shell

Katika somo hili tutajifunza njia mbili muhimu za kuongeza data kwenye database katika project yetu ya pybongo (app: menu). Njia hizi ni: Kutumia Django Admin Kutumia Django Shell Utafahamu pia jinsi ya kusajili models kwenye admin, jinsi ya kuingia admin panel, na namna ya kutengeneza entries mpya za MenuItem.

Soma Zaidi...
Python somo la 50: database kwneye django

Katika somo hili utakwenda kujifunza vipi django inaweza kuwasiliana na database, utajifunza kuusu orm na model

Soma Zaidi...
Python somo la 48: Jinsi ya Kutumia JavaScript kwenye Fomu za Django

Katika somo hili tutakwend akujifunza kuhusi Jinsi ya Kutumia JavaScript kwenye Fomu za Django

Soma Zaidi...
Python somo la 13: Kutumia condition statement - if, else, elif

Katika somo hili tutakwend akuziona aina za condition statement kwneye python na jinsi ya kuzitumia

Soma Zaidi...
PYTHON somo la 12: assignment operator, logical operator, identity oeprator na membership operator

Katika somo hili utakwenda kujfunza operator nyingine kama assignment operator logical, identity operator na membership operator.

Soma Zaidi...
Python somo la 14: Jinsi ya kutumia For loop

Katika somo hili utakwend akujifunza matumizi ya for loop kwneye python

Soma Zaidi...