Ricerca nel sito web

Revisione delle nozioni di base di Python e creazione della tua prima applicazione Web con Django - Parte 2


"Questo articolo è stato rivisto e aggiornato con l'ultima versione di Django – maggio 2016"

Come abbiamo brevemente commentato nell’ultimo articolo di questa serie, Django è un framework web gratuito e open source che trasforma lo sviluppo di applicazioni in un compito più veloce e svolto in modo più efficace, dal punto di vista del programmatore.

Installazione e configurazione di Django Web Framework con ambienti virtuali – Parte 1

Per fare ciò, Django segue il modello di progettazione MVC (ModelViewController) o come nelle loro FAQ stato, può essere meglio descritto come un framework MTV (ModelTemplateView).

In Django, una "vista" descrive quali dati vengono presentati all'utente, mentre un modello descrive come vengono presentati i dati. Infine, il modello è la fonte delle informazioni sui dati nell'applicazione.

In questo articolo esamineremo alcune nozioni di base su Python e spiegheremo come preparare il tuo ambiente per creare una semplice applicazione web nel prossimo tutorial.

Impara alcune nozioni di base su Python

Essendo un linguaggio di programmazione orientato agli oggetti, Python organizza le cose in una raccolta di oggetti con proprietà (noti anche come attributi) e metodi (noti anche come azioni). Ciò ci consente di definire un oggetto una volta e quindi di creare più istanze di tali oggetti con la stessa struttura di proprietà e metodi senza dover scrivere tutto da zero ogni volta. Gli oggetti sono quindi definiti dalle classi che li rappresentano.

Ad esempio, un oggetto Persona potrebbe essere definito come segue:

Proprietà:
  1. Altezza.persona
  2. Peso.della.persona
  3. Personaggio
  4. Persona.etnia
Metodi:
  1. Persona.mangia()
  2. Persona.sonno()
  3. Persona.cammina()

Come nella maggior parte dei linguaggi di programmazione, una proprietà è definita dal nome dell'oggetto seguito da un punto e dal nome dell'attributo, mentre un metodo è indicato in allo stesso modo ma anche seguite da una coppia di parentesi (che possono essere vuote o meno – in quest'ultimo caso, può contenere una variabile sul cui valore agirà il metodo, come Person.eat(cake) o Person.sleep(now), per citare alcuni esempi).

Per definire i metodi in Python, utilizzerai la parola chiave def, seguita dal nome del metodo e da una serie di parentesi, con un oggetto opzionale come vedrai tra un minuto.

Tutto questo diventerà molto più chiaro durante la prossima sezione dove ci immergeremo in un esempio reale.

Creare la struttura di un'applicazione web

Come ricorderete dalla Parte 1 di questa serie di Django, abbiamo detto che un'applicazione web richiede un database per archiviare i dati. Quando crei un'app, Django imposta automaticamente un database Sqlite che funziona perfettamente per applicazioni di piccole e medie dimensioni ed è ciò che utilizzeremo in questo caso per archiviare i dati per un classico primo utilizzo del Web app: un blog.

Per avviare una nuova applicazione all'interno di un progetto (a proposito, puoi pensare a un progetto come una raccolta di applicazioni web), esegui il seguente comando dopo aver attivato l'ambiente virtuale che abbiamo configurato nella Parte 1 di questa serie.


cd ~/myfirstdjangoenv/
source myfirstdjangoenv/bin/activate
cd ~/myfirstdjangoenv/myfirstdjangoproject
python manage.py startapp myblog

Nota che puoi modificare il nome dell'app (myblog) con un nome di tua scelta: questo è solo un identificatore per l'applicazione (per favore tieni presente che tutte le attività di gestione vengono richiamate utilizzando lo script manage.py tramite il binario Python – sentiti libero di esplorare il suo codice sorgente se hai un minuto):

Ora entriamo nella directory interna myfirstdjangoproject e troviamo il file settings.py, dove diremo a Django di utilizzare myblog come applicazione:


cd ~/myfirstdjangoenv/myfirstdjangoproject/myfirstdjangoproject

Cerca la sezione INSTALLED_APPS e aggiungi myblog tra virgolette singole come mostrato di seguito:

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myblog'
)

(A proposito, le righe che iniziano con django sopra rappresentano altre applicazioni Django che vengono attivate automaticamente nel progetto corrente quando viene creato per la prima volta e dovrebbero aiutare lo sviluppatore a scrivere codice relativo all'amministrazione, all'autenticazione , dichiarazioni del tipo di contenuto e così via, nella sua / domanda).

Pertanto, myblog verrà attivato, insieme alle altre applicazioni integrate, in questa istanza di Django.