Eeldused
Enne selle õpetuse näidete harjutamist peate täitma järgmised ülesanded.
- Installige Django versioon 3+ Ubuntu 20+ (eelistatult)
- Looge Django projekt
- Käivitage Django server, et kontrollida, kas server töötab korralikult või mitte.
Django rakenduse seadistamine:
Django nimelise rakenduse loomiseks käivitage järgmine käsk mudeli rakendus.
$ python3 hallata.py startapp modelappKäivitage järgmine käsk, et luua kasutaja Django andmebaasile juurdepääsuks. Kui olete kasutaja varem loonud, ei pea te käsku käivitama.
$ python3 hallata.py loob ülikasutajaLisage rakenduse nimi rakendusse INSTALLED_APP osa py faili.
INSTALLED_APPS = […
mudeli rakendus
]
Looge kaust nimega mallid sees mudeli rakendus kaust ja määrake malli omad rakenduse asukoht MALLID osa py faili.
MALLID = [… .
'DIRS': ['/ home / fahmida / django_pro / modelapp / templates'],
… .
,
]
Looge andmebaasitabeli mudel:
Ava mudelid.py fail failist mudeli rakendus kaust ja lisage järgmine skript kahe relatsioonitabeli struktuuri määratlemiseks. Õpetaja klass on määratletud nimega tabeli loomiseks õpetajad koos nimi, osakond, e-posti aadress, ja telefon väljad. Kursus klass on määratletud nimega tabeli loomiseks kursused koos kood, nimi, krediit, ja õpetaja väljad. Siin, õpetaja valdkonnas Kursused tabel on võti, mis ilmub Õpetajad tabel.
mudelid.py
# Mudelite importimise moodulalates django.db impordimudelid
# Loo klass õpetajate tabeli struktuuri määratlemiseks
klassi õpetaja (mudelid.Mudel):
nimi = mudelid.CharField (max_pikkus = 50)
osakond = mudelid.CharField (max_pikkus = 20)
email = mudelid.EmailField (max_length = 100)
telefon = mudelid.CharField (max_pikkus = 50)
# Loo klass kursuste tabeli struktuuri määratlemiseks
klassi kursus (mudelid.Mudel):
kood = mudelid.CharField (max_pikkus = 10)
nimi = mudelid.CharField (max_pikkus = 50)
krediit = mudelid.FloatField ()
õpetaja = mudelid.ForeignKey (õpetaja, on_delete = mudelid.KASADI)
Käivitage makemigratsioonid käsk luua uus ränne mudelite tehtud muudatuste põhjal.
$ python3 hallata.py makemigrations mudeli rakendusKäivitage rändama käsk SQL-i käskude käivitamiseks ja kõigi tabelite loomiseks andmebaasis määratletud andmebaasis mudelid.py faili.
$ python3 hallata.py rännataMuutke sisu admin.py järgmise sisuga fail. Siin, Õpetaja ja Kursus klasside mudelid registreeritakse, kasutades Registreeri() meetod Õpetajad ja Kursused tabelid Django halduse juhtpaneelil.
admin.py
# Impordi administraatori moodulalates django.kaastöö impordi admin
# Importige mudelid
alates .mudelid impordivad Õpetaja
alates .mudelid impordivad kursust
# Registreerige mudelid
admin.sait.registreeru (õpetaja)
admin.sait.registreeru (kursus)
Määra URL administraatori sisselogimiseks:
Tee administraatori sisselogimiseks on määratletud URL-id.py vaikimisi mis tahes Django rakenduse fail. Kui tee pole failis määratletud, muutke faili URL-id.py järgmise skriptiga fail, et avada tee sisseehitatud Django administreerimise juhtpaneel ' admin /".
URL-id.py
# Impordi administraatori moodulalates django.kaastöö impordi admin
# Importimooduli import
alates django.URL-ide importimise tee
# Määrake administraatori tee
urlpatterns = [
tee ('admin /', admin.sait.URL-id),
]
Sisestage tabelitesse kirjed:
Django administratsiooni juhtpaneeli avamiseks käivitage brauseris järgmine URL.
http: // localhost: 8000 / admin
Järgmised tabelid kuvatakse näidisrakenduse jaoks. Sellelt lehelt saab kõiki tabelite kirjeid lugeda, lisada, uuendada ja kustutada.
Mõne kirje tabelisse lisamiseks klõpsake tabelil Õpetajad. Kirje sisestamiseks kuvatakse vorm koos vajalike väljadega, nagu järgmine pilt. Vormis on kirje tabelisse lisamiseks kolm nuppu. "Salvestage ja lisage veel üksNuppu 'kasutatakse kirje sisestamiseks ja vormi uuesti avamiseks järgmise kirje sisestamiseks. "Salvestage ja jätkake muutmistNuppu 'kasutatakse kirje sisestamiseks ja vormi uuesti avamiseks koos andmetega redigeerimiseks. "SalvestaNuppu 'kasutatakse ainult kirje sisestamiseks. Igas võistlusvormis on need kolm nuppu.
Pärast kahe õpetaja kirje sisestamist kuvatakse brauseris järgmine teave.
Pärast kursuste tabelile klõpsamist ilmub järgmine vorm. Õpetaja väli Kursused tabel on seotud Õpetajad tabel võõrvõti järgi. Ilmub rippmenüü koos sisestatud õpetajaobjektidega, et lisada selle välja andmed loendist.
Pärast kolme kirje sisestamist tabelisse Kursused kuvatakse brauseris järgmine teave. Kui soovite muuta kursuste või tabeli Õpetajad kirjeid, klõpsake sellel konkreetsel objektil redigeerimisvormi avamiseks olemasolevate andmetega.
Mõlema tabeli kirjed saate kuvada brauseris, kasutades vaated.py faili ja templite loomine määratletud malli asukohas. Nende jaoks saate vaadata Django vaate ja Django malli õpetusi.
Järeldus
Tabeli andmetele pääseb juurde või neid saab muuta Django Administration Dashboardil, nagu selles õpetuses on selgitatud. Kuid andmeid saab tabelitesse lisada, kirjutades skripti skripti vaated.py fail koos mallifailiga või ilma.