Il 03/11/2011 10:37, SauZheR ha scritto:
ciao,
imho e per esperienza, non ho MAI avuto bisogno di far generare codice
html ad uno script python dal momento che ho a disposizione ZPT.

Se hai strutture dati complesse, puoi rinunciare a crearle e stampi direttamente il risultato

elaborazione -> struttura dati -> rappresentazione

puoi semplificare facendo:

elaborazione -> rappresentazione

ovviamente hai ben poco di riutilizzabile ma eviti complicati passaggi intermedi.

Utilizzo "structure" giusto quando serve chiamare oggetti che sono
gia' pronti implementando un metodo (ora non ricordo quale, mi sembra
tag() ) che ne fornisce la rappresentazione html: come ad esempio le
immagini; o in altri casi molto trivial (tipo testi che contengono<br
/>  o simili)

Ad esempio la path expression here/immagine ritorna in zpt<img
src="percorso" width... height... alt... />  tutto gia' pronto per il
render... se here/immagine punta  un oggetto di tipo Image (of course
:P)

ti consiglio di dare una buona lettura allo zopebook all'appendice di
reference ZPT:
  - http://docs.zope.org/zope2/zope2book/AppendixC.html

zpt ti offre costrutti per verificare l'esistenza
  - tal:condition="exists:...
gestire l'errore ad es. di traversing:
  - tal:on-error="

che e' un po tutto quello che ti serve nel tuo caso.

Posso capire la necessità di calcolare manualmente le dimensioni: te
la cavi con tal:attributes="width here/tuoscript; height
here/tuoscript"
Tuttavia potresti preparare meglio lo schema (se archetype) e
precalcolare tutti i formati di immagine che di servono direttamente
nel field. Cosi' potresti chiamare
  - here/tuoggetto/campoimmagine/image_{etichetta}
dove {etichetta} corrisponde ad una delle dimensioni predefinite nello
schema. Avresti anche il vantaggio di mandare al browser la giusta
quantita' di byte.


bye,
alessandro.



Il 30 ottobre 2011 00:38, plonista<[email protected]>  ha scritto:
Grazie per la soluzione!

Cmq io devo praticamente vedere se esiste un'immagine e se non esiste
mostrarne una di default
se esiste l'immagine devo ridimensionarla in maniera proporzionale e
mostrarla (anche se in realtà non la ridimensiona veramente e quindi il
pesono non cala)

con la condition so verificare se un campo è presente e se non è presente
non mostro niente (non so come dirgli di mostrare l'immagine di default se
non trova quella specifica)
e questo è il primo problema che risolverei facendo tutto in python

poi cmq la mia funzione python verifica l'esistenza dell'immagine e se
esiste fa questo calcolo delle proporzioni, che poi posso applicare con
l'attributes, che però, se non ho capito male, cmq devo rilanciare 2 volte
la stessa funzione python x usare attributes e quindi vuol dire che calcola
altezza e larghezza in 2 operazioni diverse
perchè cmq devo scrivere qualcosa tipo attributes funzionepython(altezza);
funzionepython(larghezza)

mentre in python in un colpo solo farei la verifica dell'immagine da
mostrare, il calcolo delle proporzioni (perchè cmq x ricavare l'altezza devo
cmq guardare anche la larghezza x via delle dimensioni minime) e lo show del
risultato

non so se sono riuscito a spiegarmi ;)

è probabile che cmq si riesca a fare il tutto solo con le tal e che forse è
anche più veloce, solo che non so bene come fare :)

grazie mille


--
View this message in context: 
http://plone-regional-forums.221720.n2.nabble.com/Ricavare-html-da-script-python-tp6940379p6944533.html
Sent from the Plone - Italy mailing list archive at Nabble.com.
_______________________________________________
Plone-IT mailing list
[email protected]
https://lists.plone.org/mailman/listinfo/plone-plone-it
http://plone-regional-forums.221720.n2.nabble.com/Plone-Italy-f221721.html




_______________________________________________
Plone-IT mailing list
[email protected]
https://lists.plone.org/mailman/listinfo/plone-plone-it
http://plone-regional-forums.221720.n2.nabble.com/Plone-Italy-f221721.html

Rispondere a