Mwongozo wa Kuanza na Django: Jenga Haraka Programu Yako ya Kwanza ya Wavuti
Mwongozo wa Kuanza na Django: Jenga Haraka Programu Yako ya Kwanza ya Wavuti
Django ni mfumo wa hali ya juu wa Python Web, unaolenga uundaji wa haraka na muundo rahisi. Inafuata usanifu wa Model-Template-View (MTV), ikihimiza utumiaji tena wa msimbo na uundaji wa vipengele. Mwongozo huu utakuongoza hatua kwa hatua kuunda programu rahisi ya Django, ili uweze kuanza haraka.
1. Usanidi wa Mazingira
Kwanza, unahitaji kuhakikisha kuwa Python imewekwa kwenye mfumo wako. Django inapendekeza kutumia Python 3.6 au toleo jipya zaidi.
1.1 Sakinisha Python
Ikiwa mfumo wako hauna Python, unaweza kuipakua na kuiweka kutoka Tovuti rasmi ya Python.
1.2 Unda Mazingira Mtandao (Virtual Environment)
Ili kutenganisha utegemezi kati ya miradi tofauti, inashauriwa sana kutumia mazingira mtandao.
-
Fungua terminal au kidokezo cha amri.
-
Unda saraka ya mradi, kwa mfano
myproject:mkdir myproject cd myproject -
Unda na uwashe mazingira mtandao:
python3 -m venv venv # Au python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # WindowsBaada ya kuwezesha mazingira mtandao, kidokezo chako cha terminal kitaonyesha
(venv), ikionyesha kuwa unatumia mazingira mtandao.
1.3 Sakinisha Django
Katika mazingira mtandao yaliyoamilishwa, tumia pip kusakinisha Django:
pip install Django
Thibitisha ikiwa usakinishaji umefanikiwa:
python -m django --version
Unapaswa kuona nambari ya toleo la Django.
2. Unda Mradi wa Django
Baada ya kusakinisha Django, unaweza kuunda mradi mpya wa Django.
-
Bado ukiwa kwenye saraka yako ya mradi (
myproject), endesha amri ifuatayo:django-admin startproject mysiteHii itaunda saraka inayoitwa
mysitekatika saraka yamyproject, iliyo na faili za msingi za mradi wa Django. -
Ingia kwenye saraka ya
mysite:cd mysite -
Muundo wa saraka ya mradi wa Django ni kama ifuatavyo:
mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.pymanage.py: Zana ya mstari wa amri ya kusimamia mradi wa Django.mysite/: Kifurushi cha Python kilicho na usanidi wa mradi.__init__.py: Faili tupu, inayoambia Python kwamba saraka inapaswa kuchukuliwa kama kifurushi cha Python.settings.py: Faili ya usanidi wa mradi, kama vile mipangilio ya hifadhidata, hali ya utatuzi, n.k.urls.py: Usanidi wa uelekezaji wa URL, ramani za URL kwa kazi za mtazamo.asgi.py: Faili ya usanidi ya ASGI (Asynchronous Server Gateway Interface), inayotumika kupeleka programu zisizo za synchronous.wsgi.py: Faili ya usanidi ya WSGI (Web Server Gateway Interface), inayotumika kupeleka programu za synchronous za jadi.
3. Anzisha Seva ya Uendelezaji
Django huja na seva nyepesi ya uendelezaji, ambayo hukurahisishia kuendeleza na kujaribu ndani ya nchi.
-
Kwenye saraka ya
mysite, endesha amri ifuatayo:python manage.py runserver -
Fungua kivinjari chako na uende kwenye
http://127.0.0.1:8000/. Unapaswa kuona ukurasa wa "It worked! Congratulations on your first Django-powered page.".
4. Unda Programu ya Django
Mradi wa Django unaweza kuwa na programu nyingi. Hebu tuunde programu inayoitwa myapp.
-
Fungua dirisha jipya la terminal (endelea kuendesha seva ya uendelezaji).
-
Kwenye saraka ya
mysite, endesha amri ifuatayo:python manage.py startapp myapp
Hii itaunda saraka inayoitwa myapp kwenye saraka ya mysite, iliyo na faili za mifupa za programu ya Django.
-
Muundo wa saraka ya programu ya Django ni kama ifuatavyo:
myapp/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py__init__.py: Faili tupu, inayoambia Python kwamba saraka inapaswa kuchukuliwa kama kifurushi cha Python.admin.py: Inatumika kusanidi paneli ya usimamizi ya Django.apps.py: Usanidi wa programu.migrations/: Inatumika kusimamia uhamiaji wa hifadhidata.models.py: Inafafanua miundo ya data (majadwali ya hifadhidata).tests.py: Andika kesi za majaribio.views.py: Inafafanua kazi za mtazamo, hushughulikia maombi na kurudisha majibu.
-
Kwenye
mysite/settings.py, ongezamyappkwenye orodha yaINSTALLED_APPS:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'myapp', # Ongeza myapp ]
5. Unda Mtazamo Rahisi
Sasa tunaunda mtazamo rahisi, unaoonyesha "Hello, Django!" kwenye kivinjari.
-
Hariri faili ya
myapp/views.py, ongeza msimbo ufuatao:from django.http import HttpResponse def index(request): return HttpResponse("Hello, Django!") -
Unda faili ya
myapp/urls.py, na uunganishe URL kwenye kazi ya mtazamo:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
```
3. Jumuisha `myapp/urls.py` ndani ya `mysite/urls.py`:
```python
from django.urls import include, path
from django.contrib import admin
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp/', include('myapp.urls')), # Ongeza usanidi wa URL wa myapp
]
```
4. Tembelea `http://127.0.0.1:8000/myapp/`. Unapaswa kuona ukurasa wa "Hello, Django!".
## 6. Unda Modeli
Wacha tuunde modeli rahisi ya kuhifadhi data fulani.
1. Hariri faili ya `myapp/models.py`, ongeza msimbo ufuatao:
```python
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.question_text
```
Hii inafafanua modeli inayoitwa `Question`, iliyo na sehemu mbili: `question_text` (CharField) na `pub_date` (DateTimeField).
2. Unda na utumie uhamiaji wa hifadhidata:
```bash
python manage.py makemigrations myapp
python manage.py migrate
```
Amri ya `makemigrations` itaunda faili za uhamiaji kulingana na modeli zako, na amri ya `migrate` itatumia uhamiaji kwenye hifadhidata.
## 7. Tumia Paneli ya Usimamizi ya Django
Django hutoa paneli ya usimamizi yenye nguvu, ambayo inaweza kutumika kusimamia data yako kwa urahisi.
1. Unda mtumiaji mkuu:
```bash
python manage.py createsuperuser
```
Fuata maagizo ya kuingiza jina la mtumiaji, barua pepe na nywila.
2. Hariri faili ya `myapp/admin.py`, sajili modeli ya `Question`:
```python
from django.contrib import admin
from .models import Question
admin.site.register(Question)
```
3. Tembelea `http://127.0.0.1:8000/admin/`, ingia ukitumia mtumiaji mkuu uliyemunda. Unapaswa kuona moduli ya "Questions", ambapo unaweza kuongeza, kuhariri na kufuta maswali.
## 8. Tumia Violezo
Kutumia violezo kunaweza kutoa kurasa za HTML kwa urahisi zaidi.
1. Katika saraka ya `myapp`, unda saraka inayoitwa `templates`, na ndani ya saraka ya `templates`, unda saraka inayoitwa `myapp` (`myapp/templates/myapp`).
2. Katika saraka ya `myapp/templates/myapp`, unda faili inayoitwa `index.html`, na uongeze msimbo ufuatao:
```html
# Habari, Django!
Muda wa sasa ni: {{ current_time }}
```
3. Hariri faili ya `myapp/views.py`, tumia template:
```python
from django.shortcuts import render
import datetime
def index(request):
now = datetime.datetime.now()
return render(request, 'myapp/index.html', {'current_time': now})
```
`render` function itapakia template, na itapitisha data kwa template ili kuifanya ionekane.
4. Tembelea tena `http://127.0.0.1:8000/myapp/`. Unapaswa kuona ukurasa unaoonyesha muda wa sasa.
## 9. Hitimisho
Kupitia mwongozo huu, umejifunza dhana za msingi na matumizi ya Django, ikiwa ni pamoja na kuanzisha mazingira, kuunda mradi na programu, kufafanua modeli, kuunda maoni na kutumia templates. Hii ni mwanzo tu, Django inatoa vipengele vingi, unaweza kuendelea kujifunza na kuchunguza, na kujenga programu ngumu zaidi za Wavuti.





