Lawrence Oluyede ha scritto:
> Puoi, provandolo da shell. Bisognerebbe aggiungere il supporto a
> google.py dentro l'admin. Io sono ancora contrario a metterlo nel
> save() perché quando stavo sistemando i model mi sono accorto che
> geo_location aveva bisogno di user (per l'indirizzo) e user di
> geo_location e mi pare una dipendenza stupida.

geo_location ha bisogno di user soloperchè user_id è la sua primary key.
Comunque non mi è chiaro cosa vuoi dire.

Io voglio semplicemente evitare la dipendenza circolare.
Un utente si registra con i suoi dati, noi computiamo la geolocazione,
la creiamo, la assegnamo al suo profilo e poi memorizziamo nel db il
tutto.


Va anche bene così.
Io lo avevo pensato in modo da essere un componente riutilizzabile.


> Io lascerei cosi per ora, più avanti integriamo google.py anche dentro
> l'admin
>

Non mi piace molto l'idea di non essere più in grado di inizializzare
tutti i dati via l'interfaccia di amministrazione.

C'è anceh da dire che la geolocazione ha uno strano formato
a-la-google quindi non ti metteresti mai a mano a inserire tutto quel
malloppone di informazioni (né ad inserire coordinate a caso)


Infatti come è adesso, devi solo inserire un indirizzo, tutto il resto viene fatto da save.

Purtroppo qui è anche colpa di Django che accoppia la struttura del database con il layer successivo.

Tanto per fare un esempio, io con SQLAlchemy ho:
1° livello: definizione struttura database
2° livello: definizione mapper
3° livello: definizione model (che si occupa di gestire i dati inseriti
            dall'utente)

Infine, nella patch, non mi convince questo:

Si quelle view son tutte da riscrivere, era una monkey patch al volo
per far funzionare il sito.

Inoltre nel campo location vuoi inserire tutto il dettaglio del
geocoder? Non bastano solo le coordinate?

Appunto, bisogna riscrivere :-)


Se ce la fai, prova a creare una patch alla volta, la prima per sistemare geolocation e l'altra per il profilo.

Altrimenti fai il commit di quello che c'è, lo correggiamo in seguito.
La mia obiezione era che il codice attuale c'è e funziona.




Saluti  Manlio Perillo
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a