[Python] Applicazione WEB con Python e Postgresql
Daniele Varrazzo
piro a develer.com
Mar 23 Set 2014 16:58:25 CEST
On 2014-09-23 15:36, Marco Fochesato wrote:
> Ciao Lista,
> avrei bisogno di un consiglio.
> Ho il mio bel database Postgresql al quale mi interfaccio con
> Libreoffice e
> con qualche piccola applicazione creata con Python.
>
> Viste le varie esigenze, sto pensando di mettere in piedi un server
> web e
> creare una o più applicazioni web che vadano ad interfacciarsi al
> database.
> Sono a digiuno completo di linguaggi per la creazioni di siti web.
> Adoro Python, e mi son avvicinato al framework Django. Ho acquistato
> il
> libro di Marco Beri e sto completando tutto il tutorial.
> E' la strada giusta?
>
> Lo chiedo perchè vedo parlare in rete di WSGI...
> poi così ad un primo approccio con Django, mi son trovato un po'
> stretto...
> ho la sensazione di non poter lavorare su un database già costruito.
Si', sei sulla strada giusta. WSGI e' un passo sotto django: serve
(grossomodo) a collegare un application server (quale e' django, o sono
flask/bottle) con un web server (come apache o nginx). Tu tipicamente
userai un app server e sarai un utente wsgi senza neanche accorgertene.
Per quanto riguarda il suo ORM, ci sono diverse cose che trovo *molto*
opinabili. Comunque non e' un grosso problema ne' farlo lavorare su
tabelle che hai costruito in precedenza (costruendo i modelli sulle
tabelle gia' definite, senza che crei quelle stupidissime fkey
"deferrable initially deferred" che ce li strozzerei) ne' evitare a pie'
pari l'intero layer dell'orm, evitando di definire modelli e usando
comandi sql (from django.db import connection, cur =
connection.cursor(), ...). In questo modo sfrutti es. la sua
configurazione, la gestione delle transazioni legata alle pagine ecc. ma
usi il database al massimo della potenza.
...e quando dico "non e' un grosso problema" non usare le tabelle
autogenerate oppure fare query a mano, intendo "lo faccio sempre": mai
scritto un programma che usasse la sua autogenerazione o le migrations
(ogni volta che ne vedo l'sql inorridisco) e appena le cose diventano un
pelo meno dirette trovo molto piu' semplice scrivere una query invece di
ricordarmi di usare "data__lte", come si fa l'eagerload... ma forse sono
di parte.
-- Daniele
Maggiori informazioni sulla lista
Python