Sempre più si sente parlare di
Python come linguaggio di programmazione, quindi ho deciso di studiarlo rifacendo l'applicazione
Todo list in AngularJS e NodeJs.
Questa versione ha il backend lato server realizzato in
Python, mentre l'interfaccia lato client è rimasta in
AngularJS 1.
Questo è uno screenshot della pagina principale basata sul
CSS di
Bootstrap 3:
Home La struttura delle cartelle dell'applicazione è questa:
/
sql_script ... lo script t-sql per creare il data base
static ... la directory pubbica di nodejs (tutte le chiamate a questa dir sono considerate statiche)
app ... l'applicazione SPA AngularJS 1
css ... i css dell'applicazione
fonts ... i font di boostrap
images ... le immagini dell'app
js ... le librerie di AngularJS 1
templates ... i template html delle pagine python
index.html
app.py ... la pagina iniziale di nodejs/express
config.json ... i parametri di configurazione tra cui la connection string
requirements.txt ... i pacchetti da installare
service.py ... l'implementazione delle api
start.bat ... file bat per windows per far partire il server sulla porta 5000
Per una spiegazione della parte client in
AngularJS vedi
Todo list in AngularJS e NodeJs.
Per quanto riguarda
Python abbiamo:
- templates/index.html il template Html dell'unica pagina lato server (da notare i tag {% raw %} ... {% endraw %} per inserire del codice senza che venga parsato da Python)
- app.py startup dell'applicazione con definizione del routing delle API (app.run e app.route)
- services.py l'implementazione delle API (def nome_funzione():)
- config.json i dati di configurazione tra cui la connection string al database
- requirements.txt l'elenco dei pacchetti da installare necessari per il funzionamento dell'applicazione (tra cui Flask e pyodbc)
Il codice sorgente può essere
scaricato da qui
python-angular1-todo.zip oppure su
GitHub.
Per funzionare è necessario che sulla macchina sia installato
Python e sia disponibile un database
Micrososft SQL Server.
Fatto questo è necessario:
- creare una cartella e scompattare lo zip oppure clonare il repository Git
- creare il database tramite lo script /sql_scripts/mssql.sql
- cambiare i parametri di configurazione in config.json
- installare i pacchetti necessari con pip requirements.txt
- eseguire l'applicazione con start.bat
- aprire il browser alla pagina http://localhost:5000
Il file
config.json e questo:
{
"db": {
"driver": "{SQL Server}",
"server": "localhost",
"database": "NodeJsDB",
"username": "nodejs",
"password": "....."
}
}
Su
Windows Python può essere invocato con il comando
py.exe, su altri sistemi come
Linux o
macOS, può essere invocato con
python (versione 2.x) oppure
python3 (versione 3.x).
pip è il gestore di pachetti di
Python (come
npm lo è per
NodeJs).
Lo stesso esempio lo trovate anche in versione
ASP.NET e
.NET Core a questa pagina
Todo list in AngularJS e .NET MVC.