Creare un'applicazione Web Python con Django
Django è un framework web Python di alto livello che incoraggia uno sviluppo rapido e un design pulito e pragmatico. Si occupa di gran parte della seccatura dello sviluppo web, consentendo agli sviluppatori di concentrarsi sulla scrittura dell'app anziché reinventare la ruota. Questo articolo ti guiderà nella creazione di una semplice applicazione web utilizzando Django.
Introduzione a Django
Prima di poter iniziare a creare un'applicazione web Django, devi installare Django. Puoi installare Django usando pip, l'installatore di pacchetti Python:
pip install django
Una volta installato Django, puoi creare un nuovo progetto Django eseguendo il seguente comando nel terminale o nel prompt dei comandi:
django-admin startproject myproject
Questo comando crea una nuova directory chiamata myproject
con i file necessari per iniziare. Vai a questa directory:
cd myproject
Creazione di un'applicazione Django
All'interno del tuo progetto Django, puoi creare singole applicazioni che gestiscono funzionalità specifiche. Ad esempio, potresti avere un'app per l'autenticazione utente, un'altra per i post del blog, ecc. Per creare un'app, esegui il seguente comando:
python manage.py startapp myapp
Questo crea una nuova directory chiamata myapp
contenente file come models.py
, views.py
e tests.py
, tra gli altri. Definirai i tuoi modelli, viste e template all'interno di questa app.
Definizione dei modelli
I modelli Django definiscono la struttura dei tuoi dati e sono rappresentati come classi Python. Li definisci nel file models.py
all'interno della tua app:
from django.db import models
class BlogPost(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
Una volta definiti i modelli, è necessario creare tabelle di database per essi. Eseguire i seguenti comandi per applicare le migrazioni:
python manage.py makemigrations
python manage.py migrate
Creazione di viste e modelli
Le viste Django gestiscono la logica della tua applicazione e interagiscono con i modelli per rendere i dati nei template. Una vista semplice può essere creata nel file views.py
:
from django.shortcuts import render
from .models import BlogPost
def home(request):
posts = BlogPost.objects.all()
return render(request, 'home.html', {'posts': posts})
Il codice sopra riportato recupera tutti i post del blog dal database e li passa a un modello denominato home.html
. Il modello home.html
è archiviato in una directory denominata templates
all'interno della tua app:
<!DOCTYPE html>
<html>
<head>
<title>Blog Home</title>
</head>
<body>
<h1>Blog Posts</h1>
<ul>
{% for post in posts %}
<li>{{ post.title }} - {{ post.created_at }}</li>
{% endfor %}
</ul>
</body>
</html>
Configurazione degli URL
Per collegare le viste agli URL, devi definire i pattern URL. Crea un file denominato urls.py
nella directory della tua app e aggiungi il seguente codice:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
Quindi, includi i modelli URL di questa app nel file urls.py
del progetto principale:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')),
]
Esecuzione del server di sviluppo
Dopo aver impostato modelli, viste, template e URL, puoi eseguire il server di sviluppo Django per vedere la tua applicazione web in azione:
python manage.py runserver
Apri un browser web e vai su http://127.0.0.1:8000/
per vedere l'esecuzione della tua applicazione web Django.
Conclusione
Django semplifica la creazione di applicazioni web potenti e robuste con Python. Questa guida ha trattato le basi per impostare un progetto Django, creare un'app, definire modelli, creare viste e template, configurare URL ed eseguire il server di sviluppo. Con Django, puoi creare applicazioni web scalabili e gestibili con facilità.