Django je open-source webový aplikační rámec, který vám pomáhá vyvíjet dynamické webové stránky a aplikace. Je bezpečný, rychlý a stabilní, což vám umožňuje vytvářet složité webové stránky s menším množstvím kódování. Existuje několik způsobů, jak nainstalovat Django do vašeho systému. Můžete jej nainstalovat pomocí úložiště Debian, pomocí PIP nebo z úložiště Git. Můžete si vybrat jakoukoli metodu v závislosti na vašich potřebách. Django vám umožňuje vytvořit projekt ve virtuálních prostředích Pythonu. Tímto způsobem můžete vytvořit více prostředí Django v jednom systému.
V tomto tutoriálu se naučíme, jak nainstalovat webový framework Django s PIP na Debian 10. Také se naučíme, jak vytvořit aplikaci Django a propojit ji s databází.
Předpoklady
- Server se systémem Debian 10.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Začínáme
Než začnete, aktualizujte svůj systém na nejnovější verzi. Můžete to udělat spuštěním následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Jakmile je váš systém aktualizován, restartujte jej, aby se změny projevily.
Instalovat Django
Django je napsán v jazyce Python. Takže budete muset nainstalovat závislosti Pythonu na váš systém, abyste mohli nainstalovat Django. Všechny je můžete nainstalovat pomocí následujícího příkazu:
apt-get install python3 python3-pip tree -y
Po instalaci všech balíčků můžete ověřit nainstalovanou verzi PIP pomocí následujícího příkazu:
pip3 -V
Měli byste získat následující výstup:
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)
Nyní můžete pokračovat v instalaci Django pomocí příkazu PIP, jak je znázorněno níže:
pip3 install Django
Po dokončení instalace zkontrolujte verzi Django pomocí následujícího příkazu:
django-admin --version
Měli byste vidět následující výstup:
3.0.2
V tomto okamžiku je Django nainstalován na vašem serveru. Nyní můžete přejít k dalšímu kroku.
Vytvořit projekt Django
Nyní začněme vytvářet ukázkový projekt Django. Nejprve změňte adresář na /opt, kde chcete vytvořit projekt Django:
cd /opt
Dále spusťte následující příkaz k vytvoření nového projektu Django s názvem Dproject:
django-admin startproject Dproject
Po vytvoření projektu můžete zobrazit adresářovou strukturu tohoto projektu pomocí následujícího příkazu:
tree
Měli byste získat následující výstup:
. ??? Dproject ??? Dproject ? ??? asgi.py ? ??? __init__.py ? ??? settings.py ? ??? urls.py ? ??? wsgi.py ??? manage.py
Dále změňte adresář na Dproject a migrujte nevyřízené změny pomocí následujícího příkazu:
cd Dproject
python3 manage.py migrate
Po úspěšném dokončení migrace byste měli vidět následující výstup:
Operations to perform: Apply all migrations: admin, auth, contenttypes, sessions Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying admin.0003_logentry_add_action_flag_choices... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying auth.0009_alter_user_last_name_max_length... OK Applying auth.0010_alter_group_name_max_length... OK Applying auth.0011_update_proxy_permissions... OK Applying sessions.0001_initial... OK
V tomto okamžiku byl v adresáři /opt vytvořen nový projekt Django.
Vytvořit superuživatele pro Django
Dále budete muset vytvořit superuživatele pro Django pro přístup k administrátorskému rozhraní Django. Můžete jej vytvořit pomocí následujícího příkazu:
python3 manage.py createsuperuser
Zadejte požadované uživatelské jméno, e-mailovou adresu a heslo, jak je uvedeno níže:
Username (leave blank to use 'root'): admin Email address: [email protected] Password: Password (again): Superuser created successfully.
Spustit server Django
Ve výchozím nastavení není Django přístupný ze vzdáleného systému. Takže budete muset nakonfigurovat Django a definovat IP serveru. Můžete to udělat úpravou souboru settings.py.
nano /opt/Dproject/Dproject/settings.py
Změňte následující řádek:
ALLOWED_HOSTS = ['your-server-ip']
Po dokončení uložte a zavřete soubor. Dále spusťte server Django pomocí následujícího příkazu:
cd /opt/Django
python3 manage.py runserver 0.0.0.0:8000
Jakmile je server úspěšně spuštěn, měli byste získat následující výstup:
Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). January 07, 2020 - 13:01:23 Django version 3.0.2, using settings 'Dproject.settings' Starting development server at http://0.0.0.0:8000/ Quit the server with CONTROL-C.
Přístup k aplikaci Django
V tomto okamžiku je spuštěna aplikace Django a naslouchá na portu 8000. Chcete-li se k ní dostat, otevřete webový prohlížeč a zadejte adresu URL http://ip-vaseho-serveru:8000. Aplikaci Django byste měli vidět na následující obrazovce:
Pro přístup k rozhraní Django Admin otevřete webový prohlížeč a zadejte adresu URL http://ip-ip-vašeho-serveru:8000/admin. Budete přesměrováni na přihlašovací stránku Django:
Zadejte své uživatelské jméno a heslo administrátora Django a klikněte na Přihlásit v knoflík. Na následující obrazovce byste měli vidět rozhraní Django Admin:
Instalovat MariaDB Database Connector
Dále budete muset nainstalovat databázový konektor MariaDB a další vývojové balíčky, abyste mohli propojit Django s databází MariaDB. Všechny je můžete nainstalovat pomocí následujícího příkazu:
apt-get install mariadb-server python3-dev libmariadb-dev libmariadbclient-dev -y
Jakmile jsou všechny balíčky nainstalovány, můžete nainstalovat knihovnu mysqlclient pomocí příkazu PIP, jak je uvedeno níže:
pip3 install mysqlclient
Po instalaci se přihlaste do prostředí MariaDB pomocí následujícího příkazu:
mysql
Dále nastavte heslo uživatele root pro MariaDB pomocí následujícího příkazu.
MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("newpassword");
Dále vytvořte databázi pro Django pomocí následujícího příkazu:
MariaDB [(none)]> create database testdb;
Databázi vytvořenou výše můžete zobrazit pomocí následujícího příkazu:
MariaDB [(none)]> show databases;
Měli byste získat následující výstup:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | testdb | +--------------------+
Dále vyprázdněte oprávnění a ukončete prostředí MariaDB pomocí následujícího příkazu:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Nakonfigurovat Django pro připojení MariaDB
Dále budete muset definovat přihlašovací údaje k databázi MariaDB v Django. Můžete jej definovat úpravou souboru settings.py:
nano /opt/Dproject/Dproject/settings.py
Najděte následující řádky:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } }
A nahraďte je následujícími řádky:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'OPTIONS': { 'read_default_file': '/etc/mysql/mariadb.conf.d/50-client.cnf', }, } }
Po dokončení uložte a zavřete soubor. Poté upravte soubor pověření klienta MariaDB, jak je znázorněno níže:
nano /etc/mysql/mariadb.conf.d/50-client.cnf
Definujte přihlašovací údaje k databázi MariaDB, jak je uvedeno níže:
[client] database = testdb user = root password = newpassword default-character-set = utf8
Uložte a zavřete soubor a poté restartujte službu MariaDB, aby se změny implementovaly:
systemctl restart mariadb
Dále změňte adresář na projekt Django a migrujte nové změny pomocí následujícího příkazu:
cd /opt/Dproject
python3 manage.py migrate
Jakmile bude migrace úspěšně dokončena, můžete přejít k dalšímu kroku.
Test připojení MariaDB
V tomto okamžiku je Django nakonfigurován pro připojení k databázi MariaDB. Je čas to otestovat.
Chcete-li to provést, spusťte server Django pomocí následujícího příkazu:
cd /opt/Django
python3 manage.py runserver 0.0.0.0:8000
Jakmile bude server Django úspěšně spuštěn, měli byste získat následující výstup:
Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). January 07, 2020 - 13:01:23 Django version 3.0.2, using settings 'Dproject.settings' Starting development server at http://0.0.0.0:8000/ Quit the server with CONTROL-C.
Nyní můžete přistupovat ke své aplikaci Django pomocí adresy URL http://ip-ip-vašeho-serveru:8000. Svou aplikaci Django byste měli vidět na následující obrazovce:
Po otestování můžete zastavit server Django jakéhokoli typu stisknutím CTRL + C na vašem terminálu.
Závěr
Gratulujeme! úspěšně jste nainstalovali Django a připojili jste jej k databázi MariaDB na serveru Debian 10. Nyní můžete začít vyvíjet svou webovou aplikaci a aplikovat migrace ve své aplikaci Django. Pokud máte nějaké dotazy, neváhejte se mě zeptat.