Előfeltételek:
Az oktatóanyag példáinak gyakorlása előtt el kell végeznie a következő feladatokat:
- Telepítse a Django 3+ verziót az Ubuntu 20+ verzióra (lehetőleg)
- Hozzon létre egy Django projektet
- Futtassa a Django szervert annak ellenőrzésére, hogy a szerver megfelelően működik-e vagy sem
Állítson be egy Django alkalmazást:
A. Viewapp nevű Django alkalmazás létrehozásához futtassa a következő parancsot:
$ python3 kezelni.py startapp viewappB. A felhasználó létrehozásához a Django adatbázis eléréséhez futtassa a következő parancsot. Ha korábban létrehozta a felhasználót, akkor hagyja ki ezt a részt:
$ python3 kezelni.py létrehozza a túlfelhasználótC. Adja hozzá az alkalmazás nevét a beállítások INSTALLED_APP részéhez.py fájl.
INSTALLED_APPS = […
'viewapp'
]
D. Hozzon létre egy nevű mappát sablonok benne viewapp mappát, és állítsa be a sablonok az alkalmazás helye a Sablonok része a beállítások.py fájl.
Sablonok = [… .
'DIRS': ['/ home / fahmida / django_pro / viewapp / templates'],
… .
,
]
Hozzon létre egy egyszerű függvényalapú nézetet:
Nyissa meg a nézetek.py fájl a viewapp mappát, és cserélje le a fájl tartalmát a következő szkriptre. index() függvényt használnak a szkriptben, hogy létrehozzák a böngészőhöz a HttpResponse () módszer. Itt a rendszer aktuális dátumát és idejét olvassuk le a mai () függvény és az aktuális dátumérték generálódik, mielőtt elküldené a böngészőbe.
Nézetek.py
# Importálja a dátum modult az aktuális dátum olvasásáhoza datetime importálás dátumától
# Importálja a HttpResponse modult, hogy adatokat nézetből sablonba küldjön
djangótól.http import HttpResponse
# Definiálja a függvényt függvényalapú nézet létrehozásához
def index (kérés):
# Olvassa el az aktuális dátumot
ma = dátum.Ma()
# Statikus adatok beállítása a nézethez
tartalom = "
Üdvözli a LinuxHint
"
tartalom + = "Ma van" + ma.strftime ("% B") + "" + ma.strftime ("% d") + "," + str (ma.év) + "
# A tartalmat elküldte a böngészőbe
return HttpResponse (tartalom)
Módosítsa a URL-ek.py a következő szkriptet tartalmazó fájl. A forgatókönyvben a 'Üdvözöljük/' elérési út definiálva van a index() függvény, amely elküldi a HTML-tartalmat a sablonfájlba.
URL-ek.py
# Útvonal modul importálásadjangótól.URL importálási útvonal
# Nézet modul importálása
a viewapp import nézeteiből
# Hívásindex módszer a tartalom megjelenítéséhez
urlpatterns = [
# Határozza meg az index () függvény elérési útját
elérési út ('welcome /', nézetek.index)
]
Futtassa a következő URL-t a böngészőből, amely a következő kimenetet jeleníti meg. A kimenetben megjelenik egy formázott címsor szöveg és az aktuális dátumérték.
http: // localhost: 8000 / welcome /
Hozzon létre egy egyszerű osztályalapú nézetet:
Hozzon létre egy nézetek2.py fájlt a viewapp mappában, és adja hozzá a következő parancsfájlt. Az én nézetem osztály meg van határozva a szkriptben, amely egy megnevezett metódust tartalmaz kap(). Megnevezett listaváltozó listadata a szkriptben deklarálva van, hogy 10 véletlenszámú listát hozzon létre. A lista értékeit a sablon továbbítja a HttpResponse () módszer, amikor ezt a nézetet meghívják. a véletlenszerű modult használtak a szkriptben, hogy véletlenszerű egész számot generáljanak a mert hurok a randint () funkció.
nézetek2.py
# Importálja a HttpResponse modult, hogy adatokat nézetből sablonba küldjöndjangótól.http import HttpResponse
# Nézet modul importálása
djangótól.nézetek importálása nézet
# Véletlen modul importálása
véletlenszerű importálás
# Definiálja az osztályt az osztályalapú nézetekhez
osztály MyView (Nézet):
def get (én, kérés):
# Nyissa meg a listaváltozót
listdata = []
# Adja hozzá a lista első elemét
listadata.mellékel('
10 véletlenszerű számot sorol fel:
')# 10 alkalommal iteráljuk a hurkot
n esetén a tartományban (10):
# Generáljon véletlen számot 1 és 50 között
random_number = véletlenszerű.randint (1, 50)
# Adja hozzá a véletlenszerű számot a listához
listadata.függelék (random_number)
# Adjon hozzá egy break elemet a listához
listadata.mellékel('
')
# Adja hozzá a lista utolsó elemét
listadata.mellékel('
# Küldje el a lista értékeit a böngészőnek
return HttpResponse (listdata)
Módosítsa a URL-ek.py a következő szkriptet tartalmazó fájl. A szkriptben a „szám/ ”Elérési út van meghatározva a Az én nézetem.as_view () módszer, amely elküldi a lista adatait a sablonfájlba.
URL-ek.py
# Útvonal modul importálásadjangótól.URL importálási útvonal
# Nézet modul importálása
a viewapp import nézeteiből
# MyView osztály importálása
from viewapp.views2 a MyView importálása
# Hívja meg a MyView osztály get metódusát
urlpatterns = [
# Határozza meg a hívásindex () függvény elérési útját
elérési út ('welcome /', nézetek.index),
# Adja meg a MyView hívásának útvonalát.as_view () metódus
elérési út ('szám /', MyView.as_view ()),
]
Futtassa a következő URL-t a böngészőből, amely a következő kimenetet jeleníti meg. A kimenet száma megváltozik, ha az oldal frissül, mert a lista minden egyes számát véletlenszerűen generálják.
http: // localhost: 8000 / szám /
Következtetés:
A webalkalmazás kimenete attól a nézetfájl szkriptjétől függ, amely minden webalkalmazás fő része. A függvény-alapú nézeteket leginkább a Django alkalmazás korai verziójában használják, és most az osztály-alapú vendégeket használják a Django legtöbb alkalmazásában. Mindkét típusú nézet létrehozásának módja bemutatásra került ebben az oktatóanyagban, hogy segítsen az új Django felhasználóknak az alkalmazásuk alapján létrehozni a nézeteiket.