[Python] fase 1.5
Manlio Perillo
manlio_perillo a libero.it
Mer 10 Gen 2007 18:37:41 CET
Lawrence Oluyede ha scritto:
>> Non mi riferivo al coding, ma a come organizzare la struttura delle
>> tabelle.
>
> Ok ma anche questi dettagli possono venire fuori in fase di utilizzo.
> Magari mentre clicchi e clacchi nell'html dici "cavoli ma sta roba a
> che serve?" oppuer "perché non supporta questo?"
>
> Mi rendo conto che dato il tipo di applicazione c'è poco da "decidere"
> ma può essere un utile mind-setting
>
Ok.
>> Le icone di Python?
>
> Cioè? 40 persone con la stessa icona è come 40 persona senza icona :D
>
Sempre meglio dei marcatori di default ;-).
>> Va anche deciso se, oltre al link alla pagine dei dettagli, inserire
>> solo l'username, il nome completo o del testo personalizzabile (ma non è
>> molto efficiente, diverso se potessimo usare SQLAlchemy).
>
> Cioè? Non ho capito
>
Supponendo di usare SQLAlchemy, quello che si poteva fare era:
tabella: user -> classe User
tabella: profile -> classe Profile
La tabella profile definisce una backreference sulla tabella user
Se faccio una select sulla classe User, con l'eager loader attivato,
ottengo una lista di oggetti User, ciascuno dei quali ha un attributo
profile, che è un oggetto di tipo Profile.
A questo punto bastava fare:
info = user.profile.html_info()
Invece con Django si dovrebbe fare:
info = user.get_profile().html_info()
Ma in questo caso (a meno che io non stia dicendo sciocchezze) vengono
fattee N query al database.
Ovviamente, la soluzione banale è fare una select sulla tabella
profiles, invece che su users, ma non so se in questo modo è ancora
possibile fare in modo che il profilo sia un modulo "dinamico" e non
fisso (profilo per pythonisti, profilo per Linuxiani, etc).
Saluti Manlio Perillo
Maggiori informazioni sulla lista
Python