Israel Saeta Pérez escribió: > 2008/12/7 Manuel Gualda Caballero wrote:
Con vuestra ayuda, es posible que algún día este producto pueda llegar a estar en condiciones de ser liberado. Por si esto llegara a suceder, he modificado los nombres del producto, carpetas, archivos y elementos clave del código fuente para que se adecuen a las convenciones que me parece que tienen los productos de Plone. Y para evitar confusiones con el DirectoryView y DirectoryTool de CMFCore y otros similares, le he llamado EntitiesDirectory. Este nombre facilitaría la creación de ProductsDirectory y similares con pequeñas modificaciones e, incluso, un producto Directories que permita agregar distintos tipos de fichas y directorios -de entidades, de personas, de productos, mixtos, personalizados,...-. Pero esto todavía no está ni en la fase Planning (dejémoslo en "Imaginación al Poder", aunque la verdad es que resultaría muy útil...). > Para que aparezca hipervinculado, asumiendo que el campo se llama "email": > > <a href="#" tal:attributes="href string:mailto:${context/getEmail}"> Funciona perfectamente. \ ;-) Aunque todavía no he encontrado en qué parte de la documentación puede uno aprender cosas como ésta. Yo me volví loco buscando esto y no lo encontré por ninguna parte (de hecho, si busco "href string:mailto:${context/getEmail}", no obtengo ningún resultado, ni en la documentación o foros de Plone, ni en Google). Imagino que no estaré buscando adecuadamente. > Si quieres protección antispam, la manera más limpia y sencilla que se > me ocurre es crear un método en la clase del tipo de contenido: > > class TuTipoDecontenido(ClaseMadre): > .... > def getObfuscatedEmail(self): > """Get a modified version of email so spambots can't read it. > """ > email = self.getEmail() > obfuscated_email = email.replace('@', ' at ') > return obfuscated_email > > Y luego en la plantilla: > > <a href="#" tal:attributes="href > string:mailto:${context/getObfuscatedEmail}" > tal:content="context/getObfuscatedEmail">email</a> > > No lo he probado, pero espero que funcione. Si se indica una dirección de correo electrónico, funciona estupendamente (yo le he puesto lo siguiente: "email.replace('@', ' [EMAIL PROTECTED] ')"). Pero si se deja en blanco el campo del correo electrónico, aparece el icono de correo enlazado a "mailto:". Esto lo he solucionado añadiendo la siguiente condición delante de los atributos (¿se dice así?): tal:condition="context/email|nothing" Espero no haber hecho una barbaridad, aunque la verdad es que funciona... \ ;-) >> Pero no sé qué tengo que poner en directorio_view.py para que muestre la >> correspondiente imagen (resulta curioso: he logrado encontrar >> explicaciones de cómo hacer cosas complejas con las imágenes, pero no he >> sabido localizar la que explica lo más básico: sencillamente mostrar la >> imagen con una medida determinada y ya está). > > Si mal no recuerdo, los campos tipo imagen tienen un método denominado > "tag" para conseguir uno de los tamaños almacenados: > > <img tal:replace="python: context.image.tag(size='thumb') /> Lo he probado y da un HTMLParseError (sí que es complicado mostrar las imágenes...). >>> 3.- Que el buscador del sitio busque en algunos campos más de las fichas >>> (aparte de en el campo "Título"). >>> >>> Indexa los campos por los que quieres buscar en en catálogo. >> Les he añadido "searchable = True," y el buscador ya los tiene en >> cuenta. ¿Es esto a lo que te referías o lo de indexarlos en el catálogo >> es otra cosa? > > Si no me equivoco, eso lo que hace es hacer que estos campos sean > parte del campo "virtual" SearchableText indexado. Esto significa que > podrás realizar búsquedas generales que incluyan estos campos, pero no > buscar por este campo explícitamente. Es decir, puedes buscar en todos > los campos que agrupa "SearchableText" a la vez, pero no sólo en uno > concretamente. No sé si te supondrá un problema. Entendido. En esta fase inicial me sirve el "searchable = True,", aunque quizás más adelante tenga que trabajar en la indexación de ciertos campos en el catálogo (lo anoto para entonces, por si me hiciera falta). > Suerte. :-) ¡Gracias! Manuel _______________________________________________ Plone-ConoSur mailing list [email protected] http://lists.plone.org/mailman/listinfo/plone-conosur
