Django

Jak používat model v Django?

Jak používat model v Django?
Model se používá v aplikaci Django k vytvoření webové aplikace s databází. Je vestavěnou funkcí Django k vytváření tabulek relačních databází definováním struktury tabulky pro projekt Django. Každý atribut modelu označuje typ konkrétního pole tabulky. Třída modelu bude vyžadovat definování každé tabulky databáze. Obecně je název třídy modelu definován v jednotném čísle a Django vytvoří název tabulky v množném čísle na základě názvu třídy modelu. Jakékoli úpravy tabulky navržené modelem, například vytvoření nebo aktualizace nebo odstranění, lze provést velmi snadno pomocí administrátorského panelu Django. Stejné úkoly lze provést také z příkazového řádku pythonu. V tomto kurzu je zobrazeno vytváření modelů Django, které vytvoří dvě relační tabulky a způsob, jakým k nim lze přistupovat pomocí řídicího panelu správy Django.

Předpoklady

Před procvičením příkladů tohoto tutoriálu musíte dokončit následující úkoly.

  1. Nainstalujte Django verze 3+ na Ubuntu 20+ (nejlépe)
  2. Vytvořte projekt Django
  3. Spusťte server Django a zkontrolujte, zda server funguje správně nebo ne.

Nastavení aplikace Django:

Spuštěním následujícího příkazu vytvořte aplikaci Django s názvem modelová aplikace.

$ python3 spravovat.py startapp modelapp

Spuštěním následujícího příkazu vytvořte uživatele pro přístup k databázi Django. Pokud jste uživatele již dříve vytvořili, nemusíte tento příkaz spouštět.

$ python3 spravovat.py vytvoří superuživatele

Přidejte název aplikace do INSTALLED_APP část py soubor.

INSTALLED_APPS = [

„modelová aplikace
]

Vytvořte složku s názvem šablony uvnitř modelová aplikace složku a nastavte šablony umístění aplikace v ŠABLONY část py soubor.

TEMPLATES = [

… .
'DIRS': ['/ home / fahmida / django_pro / modelapp / templates'],
… .
,
]

Vytvořte model pro databázovou tabulku:

Otevři modely.py soubor z modelová aplikace složku a přidejte následující skript k definování struktury dvou relačních tabulek. Učitel třída je definována pro vytvoření tabulky s názvem učitelé s jméno, oddělení, e-mail, a telefon pole. Kurs třída je definována pro vytvoření tabulky s názvem kurzy s kód, jméno, kredit, a učitel pole. Tady učitel pole Kurzy tabulka je cizí klíč, který se objeví z Učitelé stůl.

modely.py

# Modul importu modelů
od djanga.db modely importu
# Vytvořte třídu a definujte strukturu tabulky učitelů
třídní učitel (modely.Modelka):
name = modely.CharField (max_length = 50)
oddělení = modely.CharField (max_length = 20)
email = modely.EmailField (max_length = 100)
telefon = modely.CharField (max_length = 50)
# Vytvořit třídu k definování struktury tabulky kurzů
třída Kurz (modely.Modelka):
kód = modely.CharField (max_length = 10)
name = modely.CharField (max_length = 50)
zápočet = modely.FloatField ()
učitel = modely.ForeignKey (učitel, on_delete = modely.KASKÁDA)

Spusťte makemigrace příkaz k vytvoření nové migrace na základě změn provedených modely.

$ python3 spravovat.py makemigrations model aplikace

Spusťte migrovat příkaz k provedení příkazů SQL a vytvoření všech tabulek v databázi definované v souboru modely.py soubor.

$ python3 spravovat.py migrovat

Upravit obsah souboru admin.py soubor s následujícím obsahem. Tady, Učitel a Kurs třídy modelů jsou registrovány pomocí Registrovat() způsob zobrazení Učitelé a Kurzy tabulky na řídicím panelu správy Django.

admin.py

# Importovat modul správce
od djanga.contrib import admin
# Importujte modely
z .modely import Učitel
z .kurz importu modelů
# Zaregistrujte modely
admin.stránky.registrace (učitel)
admin.stránky.registrace (kurz)

Nastavit URL pro přihlášení administrátora:

Cesta pro přihlášení administrátora je definována v adresy URL.py soubor pro libovolnou aplikaci Django ve výchozím nastavení. Pokud cesta není v souboru definována, upravte adresy URL.py soubor s následujícím skriptem pro otevření vestavěného Django Administration Dashboard pro cestu ' admin /''.

adresy URL.py

# Importovat modul správce
od djanga.contrib import admin
# Importovat modul cesty
od djanga.cesta pro import adres URL
# Definujte cestu pro administrátora
urlpatterns = [
cesta ('admin /', admin.stránky.adresy URL),
]

Vložte záznamy do tabulek:

Spusťte následující adresu URL z prohlížeče a otevřete Django Administration Dashboard.

http: // localhost: 8000 / admin

Následující tabulky se zobrazí pro modelovou aplikaci. Na této stránce lze číst, vkládat, aktualizovat a mazat jakýkoli záznam tabulek.

Kliknutím na tabulku Učitelé vložíte do tabulky nějaké záznamy. Pro vložení záznamu se zobrazí formulář s nezbytnými poli, jako je následující obrázek. Ve formuláři jsou tři tlačítka pro vložení záznamů do tabulky. ''Uložte a přidejte dalšíTlačítko 'se používá k vložení záznamu a opětovnému otevření formuláře pro vložení dalšího záznamu. 'Uložte a pokračujte v úpraváchTlačítko „slouží k vložení záznamu a opětovnému otevření formuláře s údaji pro úpravy. 'UložitTlačítko 'se používá pouze k vložení záznamu. Každá přihláška bude obsahovat tato tři tlačítka.

Po vložení dvou záznamů učitele se v prohlížeči zobrazí následující informace.

Po kliknutí na tabulku kurzů se zobrazí následující formulář. Učitel pole Kurzy tabulka souvisí s Učitelé tabulka cizím klíčem. Zobrazí se rozevírací seznam s vloženými objekty učitele, který přidá data do tohoto pole ze seznamu.

Po vložení tří záznamů do tabulky kurzů se v prohlížeči zobrazí následující informace. Pokud chcete upravit jakékoli záznamy kurzů nebo tabulky učitelů, klikněte na daný objekt a otevřete editační formulář s existujícími daty.

Záznamy obou tabulek můžete zobrazit v prohlížeči pomocí pohledy.py soubor a vytvoření chrámů v definovaném umístění šablony.  Můžete si je prohlédnout v tutoriálech Django View a Django Template.

Závěr

K datům tabulky lze přistupovat nebo je upravovat pomocí Django Administration Dashboard, jak je vysvětleno v tomto kurzu. Data však lze vložit do tabulek napsáním skriptu do souboru pohledy.py soubor s nebo bez použití souboru šablony.

Hry Jak nainstalovat League Of Legends na Ubuntu 14.04
Jak nainstalovat League Of Legends na Ubuntu 14.04
Pokud jste fanouškem League of Legends, pak je to pro vás příležitost otestovat běh League of Legends. Všimněte si, že LOL je podporován na PlayOnLinu...
Hry Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
OpenRA je herní engine Libre / Free Real Time Strategy, který obnovuje rané hry Westwood, jako je klasický Command & Conquer: Red Alert. Distribuované...
Hry Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Emulátor Dolphin vám umožní hrát vybrané hry Gamecube a Wii na osobních počítačích se systémem Linux (PC). Jako volně dostupný herní emulátor s otevř...