[Python] [pythonisti] model, atto secondo
Manlio Perillo
manlio_perillo a libero.it
Gio 18 Gen 2007 17:03:23 CET
Lawrence Oluyede ha scritto:
>> - per Tag ci voglio pensare su, magari usiamo anche un altro nome
>
> Semplicemente i tag sono le specialties del programmatore.
> Le keywords insomma.
>
> "django twisted zope".split() :-)
>
> a-la-delicious
>
Si, questo lo avevo capito.
Stavo pensando a come gestirlo al meglio.
>> - state cosa andrebbe a rappresentare, ad esempio per l'Italia?
>
> Nulla, per questo è blank=True. Ha un senso per le repubbliche
> federali in cui esiste il concetto di stato, tipo USA, Australia,
> Nigeria
>
Invece io vorrei un campo che, per l'Italia, significhi regione.
Tutti i campi (eccetto country) possono essere nulli.
>> - non mi convince la foreign key a GeoLocation (visto che quest'ultima
>> ha già una relazione 1:1 con la tabella User).
>
> Io l'ho pensata cosi. La geo-locazione ha un senso se legata
> all'utente.
Ma con una foreign key mi sembra che l'attributo diventi una lista.
> Il nodo però è l'utente e il suo profilo che _possiede_
> una geolocation.
>
> Io lo toglierei proprio quel one-to-one field da GeoLocation. Non ci serve.
>
Serve, dato che username *è* la primary key di quella tabella (ogni
utente ha una sola locazione).
Altrimenti si usa una primary key farlocca, facciamo come dici tu, e
magari lasciamo aperta la possibilità che una persona abbia più di una
locazione (ad esempio casa/lavoro, ma in questo caso andrebbe aggiunto
un campo ulteriore per stabilire il tipo di indirizzo).
>> Per quanto riguarda l'hook non vedo problemi.
>> Se ricordo bene syncdb cerca dei file sql per inizializzare il database.
>> Se vogliamo invece tenere i dati in un formato più agile (come YAML),
>> possiamo anche scrivere uno script di inizializzazione separato.
>
> Si ma non mi sembrava il caso di introdurre YAML come dipendenza.
>
YAML era un esempio, va bene anche:
-------------
it, Italia
en, England
-----------
Giusto per non avere un file scomodissimo come
http://www.italy.fsfeurope.org/it/projects/cap/trovacap.sql.gz
Tra l'altro, con il file formattato come nel mio esempio, possiamo
usare il comando COPY.
>> A parte questi dubbi, per me puoi anche fare il commit (tanto è un
>> modulo indipendente dal resto).
>
> Ok, allora creo direttamente la app "profile" con quel model
>
Perfetto.
>> Una volta fatto il commit lo si va a rifinire (obbligatori i commenti in
>> Place)
>
> Certo!
>
>
Saluti Manlio Perillo
Maggiori informazioni sulla lista
Python