[Python] mod_python ed il giusto handler
Andrea Giammarchi
andrea a 3site.it
Sab 19 Ago 2006 01:05:00 CEST
Lawrence Oluyede ha scritto:
> Si fa in una linea di python: "value in values" ritorna True o False.
> Scusa la battuta ma parli di performance e scrivi cose come questa?
credo sia il primo blocco che ho scritto ... poi dopo misono ricordato
dell' in :E
> getMethods() è piena di bad practices. Non usare has_key ma usa in
> semplicemente.
k
> Poi basta isinstance() senza scomodare il modulo types
> per vedere se qualcosa è di un certo tipo.
http://www.canonical.org/~kragen/isinstance/
> Il resto è tutto più o meno uguale. parseType con un dizionario la fai
> in 3 righe ed è più facilmente manutenibile.
???
def parseType(self, value):
stypes = {
"string":"s",
"int":"i", "integer":"i",
"null":"N", "none":"N",
"class":"O", "object":"O",
"bool":"b", "boolean":"b",
"array":"a", "list":"a", "dict":"a", "tuple":"a",
"float":"d", "double":"d", "long":"d"
}
result = "u"
vtype = ""
if "type" in value:
vtype = value["type"].lower()
if vtype in stypes:
result = stypes[vtype]
return result
> Non te la prendere, ma se
> studiassi un attimino di più Python magari faresti una lib
> "performante". Sto ancora cercando di capire come quella tua lib
> comunichi con JS.
la classe per avere GET, POST serve a richiamare in GET il nome della
classe da esportare durante la creazione della pagina
<script src="ACE.psp?class=MyClass"></script>
<script>
var mc = new MyClass();
onload = function(){
document.getElementById("tasto").onclick = function() {
mc.sayHello.result = function(s){alert(s)}
mc.sayHello.call("Ciao");
}
}
</script>
la POST per iniviare le variabili serializzate, la classe ACE per JS è
su devpro
> Non hai capito. Sono varie funzioni perchè ogni funzione gestisce un
> evento separato. Tipo il connect al server, il quit, ecc ecc. Ste cose
> le avresti anche con la tua lib eh
ovvio
> Ok allora lasciami dire che a me pare una scelta sbagliata.
a me non troppo essendo piaccaparo :D
> Riformulo la domanda: che tipo di interazioni avanzate vuoi fare con
> AJAX?
invio / ricezione di variabili complesse attraverso l'uso di metodi
server al fine di togliere metà del debug sul client e dedicarsi al solo
debug server
> - procedurale = chiamo una procedura. *ESATTAMENTE* la stessa cosa che
> stai facendo tu.
attraverso un oggetto
> - il tuo approccio è bloccante
eh ? ... e che asincrono sarebbe ?
> quindi se devi magicamente trasferire
> mega byte di dati come dicevi la tua fantastica app si blocca.
> callRemote() perlomeno è asincrono, come tutto in Nevow
come tutto in ACE
> Cosa fondamentale. Scusa sto diventando sarcastico.
k
> Se centomila server PHP nel mondo non installano JSON per PHP scritta in
> C, credi davvero che installeranno la tua libreria?
si perchè non si installa, ACE per PHP è un file ACE.php ed un file
ACE.js .... e dovrebbe diventare un file ACE.psp e lo stesso file
ACE.js, per continuare con un file ACE.cs e sempre quello in JS
> Non ho capito NULLA di quelle quattro righe :-(
> Non puoi basare la tua lib sperando di avere in ingresso sempre e solo
> UTF-8 perchè UTF8 non è l'unico. Rispondo questo perchè non ho ben
> capito il resto.
UTF-8 è un modo php per dire che sfrutta la serializzazione /
unserializzazione in multibytes ... in Python non esisterebbe UTF-8,
anzi ... quella var la dovrei togliere ma la PHP_Serializer, per
portabilità, deve poter supportare la modalità di php
> Come sopra cosa? Son 3 post che cerco di farti notare che è meno
> vendibile di quella JSON
ma ancora non hai capito bene cosa fa :D
> import dinamico? Ossignore :-)
si si si ... lo faccio in C# è complicato in Python ? o_O
> Se vuoi ti dico qual è il meccanismo in Python per fare l'import
> dinamico e quale modulo può farlo ma te lo lascio trovare da solo cosi
> non mi sento responsabile per eventuali danni :-)
quali danni potrebbe fare se sei tu a mettere i files sul server, sei
"tu" che verifichi il path da richiamare e sei sempre "tu" a creare
l'applicativo ed a parsare le sue informazioni ?
Maggiori informazioni sulla lista
Python