Introduzione
Django è un framework Web Python di alto livello gratuito e open source progettato per aiutare gli sviluppatori a creare applicazioni Web sicure, scalabili e gestibili.
Esistono diversi metodi per installare Django, a seconda delle tue esigenze. Può essere installato a livello di sistema o in un ambiente virtuale Python usando pip.
I pacchetti Django sono anche inclusi nei repository ufficiali di Ubuntu e possono essere installati utilizzando il gestore pacchetti apt
. Questo è il metodo più semplice per installare Django su Ubuntu 18.04, ma non flessibile come l'installazione in un ambiente virtuale. Inoltre, la versione inclusa nei repository è sempre in ritardo rispetto all'ultima versione di Django.
Lo scopo principale degli ambienti virtuali Python è quello di creare un ambiente isolato per diversi progetti Python. In questo modo puoi avere più ambienti Django diversi su un singolo computer e installare una versione specifica di un modulo in base al progetto senza preoccuparti che ciò influirà sulle altre tue installazioni Django. Se installi Django nell'ambiente globale, puoi installare solo una versione di Django sul tuo computer.
Se desideri installare Django su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Installare Django su Ubuntu 18.04
Le seguenti sezioni forniscono istruzioni dettagliate su come installare Django in un ambiente virtuale Python su Ubuntu 18.04.
Installare Python 3 e venv
Ubuntu 18.04 viene fornito con Python 3.6 per impostazione predefinita. Puoi verificare che Python 3 sia installato sul tuo sistema digitando:
python3 -V
L'output dovrebbe essere simile al seguente:
Python 3.6.9
A partire da Python 3.6, il modo consigliato per creare un ambiente virtuale è utilizzare il modulo venv
. Per installare il pacchetto python3-venv
che fornisce il modulo venv
, eseguire il comando seguente:
sudo apt install python3-venv
Una volta installato il modulo, siamo pronti per creare un ambiente virtuale per la nostra applicazione Django.
Creazione di un ambiente virtuale
Inizia navigando nella directory in cui desideri archiviare i tuoi ambienti virtuali Python 3. Può essere la tua home directory o qualsiasi altra directory in cui l'utente ha autorizzazioni di lettura e scrittura.
Crea una nuova directory per la tua applicazione Django e naviga al suo interno:
mkdir my_django_app
cd my_django_app
Una volta all'interno della directory, eseguire il comando seguente per creare il nuovo ambiente virtuale:
python3 -m venv venv
Il comando sopra crea una directory chiamata venv
, che contiene una copia del binario Python, il gestore pacchetti Pip , la libreria Python standard e altri file di supporto. È possibile utilizzare qualsiasi nome desiderato per l'ambiente virtuale.
Per iniziare a utilizzare questo ambiente virtuale, è necessario attivarlo eseguendo lo script activate
:
source venv/bin/activate
Una volta attivata, la directory bin dell'ambiente virtuale verrà aggiunta all'inizio della variabile $PATH
. Anche il prompt della shell cambierà e mostrerà il nome dell'ambiente virtuale attualmente in uso. Nel nostro caso lo è venv
.
Installare Django
Ora che l'ambiente virtuale è attivato, puoi usare il pip del gestore pacchetti Python per installare Django:
pip install django
All'interno dell'ambiente virtuale, è possibile utilizzare il comando pip
anziché pip3
e python
invece di python3
.
Per verificare l'installazione utilizzare il seguente comando che stamperà la versione di Django:
python -m django --version
Al momento della stesura di questo articolo, l'ultima versione ufficiale di Django è la 3.0.3
3.0.3
La tua versione di Django potrebbe differire dalla versione mostrata qui.
Creare un progetto Django
Per creare un nuovo progetto Django chiamato mydjangoapp
usa l'utility django-admin
della riga di comando:
django-admin startproject mydjangoapp
Il comando sopra creerà una directory mydjangoapp
nella directory corrente.
All'interno di quella directory troverai lo script principale per la gestione dei progetti nominato manage.py
e un'altra directory che include la configurazione del database e Django e le impostazioni specifiche dell'applicazione.
Migriamo il database e creiamo un utente amministrativo.
Inizia navigando nella directory mydjangoapp
:
cd mydjangoapp
Per impostazione predefinita, Django utilizza un database SQLite. Per le applicazioni di produzione, è possibile utilizzare come database PostgreSQL, MariaDB, Oracle o MySQL.
Eseguire il comando seguente per migrare il database:
python manage.py migrate
L'output sarà simile al seguente:
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 sessions.0001_initial... OK
Una volta eseguita la migrazione del database, crea un utente amministrativo in modo da poter utilizzare l'interfaccia di amministrazione di Django:
python manage.py createsuperuser
Il comando richiederà un nome utente, un indirizzo e-mail e una password per l'utente amministrativo.
Username (leave blank to use 'noviello'): admin
Email address: [email protected]
Password:
Password (again):
Superuser created successfully.
Test del server di sviluppo
Avviare il server Web di sviluppo utilizzando lo script manage.py
seguito dall'opzione runserver
:
python manage.py runserver
Vedrai il seguente output:
Performing system checks...
System check identified no issues (0 silenced).
October 20, 2018 - 11:16:28
Django version 2.1.2, using settings 'mydjangoapp.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Se hai installato Django su una macchina virtuale e desideri accedere al server di sviluppo Django, dovrai modificare il file settings.py
e aggiungere l'indirizzo IP del server all'interno dell'elenco ALLOWED_HOSTS
.
Apri http://127.0.0.1:8000
nel tuo browser web e ti verrà presentata la pagina di destinazione Django predefinita.
Puoi accedere all'interfaccia di amministrazione di Django, aggiungendo /admin/
alla fine dell'URL (http://127.0.0.1:8000/admin/
). Questo ti porterà alla schermata di accesso dell'amministratore.
Inserisci il tuo nome utente e password e verrai reindirizzato alla pagina di amministrazione di Django.
Per interrompere il server di sviluppo digitare CTRL-C
nel proprio terminale.
Disattivare l'ambiente virtuale
Una volta terminato il tuo lavoro, disattiva l'ambiente, digitando deactivate
e tornerai alla tua shell normale.
deactivate
Conclusione
Hai imparato a creare un ambiente virtuale Python e installare Django sul tuo computer Ubuntu 18.04. Per creare ulteriori ambienti di sviluppo Django, ripeti i passaggi descritti in questo tutorial.
Se non conosci Django, visita la pagina della documentazione di Django e scopri come sviluppare la tua prima app Django.