Il 26/08/2010 16.16, Michelangelo Gelardi ha scritto: > Ciao a tutti, > > Ho la necessità di mostrare dentro ad un portlet tutti i portal_type di un > certo tipo, nel mio caso "articolo". > Ho quindi scritto quanto segue: > > <html metal:use-macro="here/main_template/macros/master"> > <div metal:fill-slot="body"> > <div metal:define-macro="portlet"> > <div > tal:define="presults > python:context.portal_catalog(portal_type='articolo')"> > <div tal:repeat="articolo presults"> > <h1 tal:content="articolo/Title">Titolo</h1> > <div > tal:content="articolo/Description">Descrizione</div> > </div> > </div> > </div> > </div> > </html> > > Fin qui tutto bene se non fosse che vorrei recuperare anche il contenuto di > uno dei campi degli articoli che si chiama testo. Consapevole del fatto che > ciò che mi viene fuori dal catalog non sono altro che dei brain, come faccio > ad integrare al mio codice un getObject così da recuperare anche i vari > contenuti? è vero che puoi fare getObject, ma potresti altrimenti decidere di indicizzare il campo "testo" che ti interessa, così il portal_catalog include direttamente il dato nel brain (mi pare si chiami così) senza dover istanziare l'oggetto.
Io avevo fatto uno script che faceva il getObject di tutti gli oggetti del catalogo, per controllare il valore di un campo... non hai idea di quanto tempo di metteva (perché chiamando getObject istanziava tutti gli oggetti). Se il tuo portlet deve essere visualizzato frequentemente, forse avresti prestazioni superiori creando un indice per il campo che ti serve. Giacomo n.b. ma siccome potrei anche aver detto delle cavolate, non me la prenderò a male se chi ne sa piu' di me vorrà smentirmi o correggere la mia affermazione. _______________________________________________ Plone-IT mailing list [email protected] http://lists.plone.org/mailman/listinfo/plone-it http://www.nabble.com/Plone---Italy-f21728.html
