From dukebody en gmail.com Tue Jul 1 00:28:11 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Tue Jul 1 00:28:20 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300955l786e9547nea0f4f75881df346@mail.gmail.com> <5e92377e0806301054m18c6dadan8e50c76aa6bc257a@mail.gmail.com> <5e92377e0806301306n2cad71b0s7928d2b7bf2b3b8a@mail.gmail.com> Message-ID: <5e92377e0806301528p72d498f4w51b437920c0f74a4@mail.gmail.com> Hola, 2008/6/30 Santiago Videla : > Buenas, > > no tengo mucho mas que aportar, solo una cosa > >> Israel Saeta escribió: >> Sí, la documentación deja bastante que desear, pero para paliar este >> problema hace falta algo de trabajo de la comunidad. ;-) > > No estoy de acuerdo. > > Para ver la documentacion de Zope no hace falta mas que buscar la carpeta > tests o ftests de cada egg, y estas listo. Ejemplos de uso, posibles > errores, dependecias, y hasta codigo funcional que puedes copiar y pegar > para verlo corriendo. > > Depende de cada uno, que forma de documentacion prefiere, creo que esta > forma de documentar es sumamente valiosa y efectiva. La documentación de los huevos está bien, pero en general está demasiado dispersa. Hay muchos tutoriales, pero parece que ninguno realmente oficial actualizado por la comunidad, que yo conozca. :-( Yo he aprendido básicamente con el Zope Book y los libros de Philipp y Martin, porque de los recursos sobre Zope 3 que había hace tiempo no entendía ni jota, me sonaba todo a magia. -- Israel Saeta Pérez http://dukebody.com From dukebody en gmail.com Tue Jul 1 01:46:51 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Tue Jul 1 01:47:02 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300955l786e9547nea0f4f75881df346@mail.gmail.com> <5e92377e0806301054m18c6dadan8e50c76aa6bc257a@mail.gmail.com> <5e92377e0806301306n2cad71b0s7928d2b7bf2b3b8a@mail.gmail.com> Message-ID: <5e92377e0806301646l480606c2i3534ce632a3158fd@mail.gmail.com> Si no acabamos la "flame war" hoy, no... ;-) 2008/6/30 Garito : > El día 30 de junio de 2008 22:06, Israel Saeta Pérez >> Por ejemplo, DTML se sigue usando en algunas hojas de estilo de Plone. >> Supongo que cuando se desarrolle y asimile una tecnología que pueda >> reemplazar a DTML se eliminará de la distribución principal de Zope, >> como habrá pasado con otros muchos componentes. De hecho, no sé si se >> incluye con Zope 3 siquiera, al menos yo no lo he visto mencionado en >> ningún documento sobre Zope 3. > > Justo lo que yo te decia: esta de muerte ir llevando a los que usan Zope2 > hacia Zope3 paulatinamente pero el esfuerzo de integrar las tecnicas del 3 > en el 2 es mucho mayor que el necesario para traspasar lo que haya hecho en > DTML a otro sistema > Eso ya me chirria bastante Pero si no integras las técnicas de Z3 en Z2, incluyendo el posible reemplazo de DTML, ¿cómo vas a traspasar DTML a ese sistema? ¿O desarrollarías el reemplazo de DTML directamente en Z2? No lo veo claro. Si se integran técnicas de Z3 en Z2 es porque se quieren cosas de ambos sistemas. Según he leído en la lista de discusión zope3-dev, la idea general es que se fundan Zope 2 y Zope 3 en una especie de Zope 5, donde Z3 aporte la arquitectura de componentes y la modularización y Zope 2 el servidor de aplicaciones. Aunque esto último no lo he entendido muy bien. >> No me refiero a palabras reservadas, sino a objetos, herramientas que >> viven en la base de datos e impiden que puedas llamar a un objeto tuyo >> en la raíz del sitio de Plone igual. Por ejemplo, si la herramienta >> para manejar CSS se llamase simplemente "css", ya no podrías llamar a >> un elemento del menú "css". Y hay muchas herramientas en la raíz del >> sitio. > > En todo caso existen los dominios? zope.interface... como se llama > tecnicamente a esto, ahora no recuerdo pero la idea es esa, no? De todos > modos eso es algo que es inerente a usar el arbol de la manera que lo estan > usando ellos no de la tecnologia en si... Los espacios de nombres de Python, que es como se llama técnicamente al hecho de que el módulo interface esté dentro del módulo zope, no está relacionado directamente con la imposibilidad de crear dos objetos con el mismo nombre en el mismo nodo en la ZODB. Y, como tú dices, es un problema inherente a la forma en la que se usa el árbol en Z2, según yo lo entiendo. >> >> * En Zope 2 muchos objetos derivan/derivaban de clases de mezcla >> >> (mix-in classes) para poder ofrecer una serie de métodos estándar. >> >> Ahora no hace falta construir objetos gigantes para mantener la >> >> funcionalidad, sino que se adaptan objetos simples y punto. Es el >> >> núcleo de la ZCA. >> > >> > No puedo hablar de este tema pues lo desconozco pero volvemos a lo >> > mismo: >> > matamos, en una parte importantisima de casos, moscas a cañonazos (aka >> > el >> > coste de esta funcionalidad es desmesurado, bajo mi opinion, con >> > respecto a >> > los beneficios que aporta (ni que sea en porcentajes de uso real de la >> > plataforma) >> >> Estoy en total desacuerdo contigo en este aspecto. Utilizar >> adaptadores en vez de clases gigantescas lo que hace es rebajar el >> peso de los objetos drásticamente, y los beneficios que aporta una >> arquitectura de componentes (zope.interfaces + zope.component) son >> incuestionables en materia de modularidad y reusabilidad. > > Si yo puedo coincidir en eso perfectamente, de hecho Yanged tiene un > mecanismo de base para eso. Si lo que yo digo es que la manera de llevarlo a > cabo es un poco a lo bestia, sin arte. Si al final toda esta conversacion > tiene que ver con que en nuestro mundo hay cosas hechas con arte y cosas que > no lo tienen y Zope empezo siendo una obra de arte que se va deteriorando > mas y mas. Eso en el mundo del procesado de datos implica mas errores y mas > lento. Arte = simple, simple = eficiente, eficiente = rapido + libre de > error Lo siento, pero todavía no me he enterado bien de qué es Yangued. ¿Es una aplicación que estás desarrollando? ¿Un framework? ¿Qué es lo que te hace pensar que Zope se está deteriorando, los esfuerzos por unir Zope 2 con Zope 3? > [ ... ] >> Yo he trabajado también con Django y sé que cada uno tiene sus puntos >> fuertes y sus puntos flacos. Puede que Zope no se adapte a tus >> necesidades, pero eso no quiere decir que no sirva para los demás. > > Que sea lo mejor que tenemos no creo que signifique que sea lo mejor que > hay. Cuando Zope empezo era muchisimo mejor, en comparacion, que lo que es > ahora pero solo porque sean ocupado de hacerlo mas grande sin mantenerlo > simple ¿Cuando dices "cuando Zope empezó" te refieres a los inicios de Zope, o a Zope 2, o a los inicios de Zope 3? Yo también empecé con Zope 2 y el TTW development y la acquisition, pero pronto encuentras problemas de reusabilidad y limpieza del espacio de nombres. Como dicen los mandamientos de Python, "explicit is better than implicit". :-) >> También he probado otros CMSs distintos de Plone y he conocido los >> problemas que han tenido compañeros con ellos. Plone es, en mi >> opinión, uno de los CMSs más potentes del mercado actualmente, si no >> el que más. Si conoces la fórmula mágica para descomplicar Plone, es >> decir, si sabes como desarrollar la mismas funciones sin complicarlo >> tanto, seguro que los desarrolladores estarán encantados de >> escucharte. Yo desde luego te apoyo. > > Estoy en ello, creeme. De todas maneras, en mi vida siempre he tenido que > demostrar las cosas para que se entiendan como yo las veo asi que en vez de > contar lo que estoy haciendo me gustaria enseñar lo que hago y para eso aun > queda un rato (teniendo en cuenta que es un modo de emplear mi vida no hay > prisa, tambien te lo digo). Hace poco publique ZSM y solo he recibido un > contacto que ni siquiera entendio lo que buscaba con el. Seguramente si > hubiese publicado ZSM con todas la funcionalidades que deberia tener la cosa > hubiese cambiado pero entonces que gracia tendria? para eso publico Yanged > enterito y no a trozos > De los que estamos aqui pocos publican su trabajo y los que lo hacen ya > saben bien lo costoso que es para lo poco que aporta a no ser que pegue > mucho y se forme una verdadera comunidad, un tema complicado, si Tampoco sé lo que es ZSM, lo siento. Evidentemente, para echar a andar un producto en el mundo del SL y construir una comunidad en torno a él hace falta que sea bueno. Si sigues trabajando en ZSM y en Yangued quizá lo consigas. >> >> >> >> >> * Para desarrollar tipos de contenido en Plone en Zope 2 se necesitó >> >> desarrollar Archetypes. Con Zope 3 (Five en este caso), las >> >> interfaces, zope.formlib y algo más, ya no te hace falta Archetypes, y >> >> todo es mucho más claro y sencillo, al menos a mis ojos. >> > >> > Error: estas hablando de Plone, no de Zope, en Zope habia un producto >> > llamado Formulator que, seguramente, fue el inspirador de los >> > archetypes. De >> > nuevo, si huviesemos (eufemismo) perdido el tiempo simplificando >> > conceptos >> > los archetypes no huviesen ni aparecido y huviesemos ido a parar >> > directamente a los zope.formlib >> >> Bueno, aquí ya entramos en temas de política. Zope es de código >> abierto, así que cualquiera puede modificar el código para conseguir >> esa simplificación, distribuirlo y proponer que se mezcle con la rama >> principal. Si no colisiona con la idea del desarrollo principal del >> producto, es decir, si los desarrolladores (espero que "elegidos" >> meritocráticamente) se acabará integrando, y si no (o si simplemente >> no se pretendía fusionar con la rama principal de desarrollo del >> producto) se hace un fork y que la comunidad elija que es lo que >> quiere usar. Esto último es lo que yo entiendo que ha pasado con Grok >> y con z3c.*, y así puede llover a todos los gustos. > > En este caso el nucleo duro de zope no es meritocratico sino los secuaces de > Jim Fulton creo. Por otro lado si siempre y cuando lo que ya hay hecho sea > aprovechable. Si lo aprovechable son cuatro conceptos y poco mas mejor > empezar de nuevo que es lo que me esta pasando a mi con Yanged Date cuenta de que lo que estás insinuando es muy duro: que las decisiones del desarrollo de Zope se toman por amiguismo en vez de obedeciendo a razones de toda la comunidad. La verdad que acabo de leer unos mensajes en la lista de zope3-dev sobre el futuro de Zope 2 y Zope 3 y se nota tensión en el ambiente. Jim Fulton quiere el modelo 2+3=5, pero hay otros que quieren reescribir las partes de Z2 a Z3 para hacerlas más claras. > [...] >> Sobre estructuras de almacenamiento de datos y sistemas de archivos no >> tengo casi ni idea, pero supongo que cuando desarrollaron la ZODB no >> existía ZFS, y lo hicieron como alternativa al modelo relacional. Si >> ZFS es tan potente, algún día alguien implementará una clase del tipo >> "Persistent" en ZFS en vez de en la ZODB, se podrá usar lo que se >> quiera, y todos contentos. > > Una cerveza a que el producto sale pero no por el nucleo duro de Zopers... Depende de a quién consideres el núcleo duro. Ten en cuenta que si la gente del núcleo duro está muy volcada en el desarrollo interno de Z3 con su ZODB de serie, que les funciona, no se van a poner a buscar otros métodos para implementar la misma funcionalidad o más, por no liarse. > [...] Me voy a dormir, que ya es hora. -- Israel Saeta Pérez http://dukebody.com From garito en sistes.net Tue Jul 1 03:03:14 2008 From: garito en sistes.net (Garito) Date: Tue Jul 1 03:03:24 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: <5e92377e0806301646l480606c2i3534ce632a3158fd@mail.gmail.com> References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300955l786e9547nea0f4f75881df346@mail.gmail.com> <5e92377e0806301054m18c6dadan8e50c76aa6bc257a@mail.gmail.com> <5e92377e0806301306n2cad71b0s7928d2b7bf2b3b8a@mail.gmail.com> <5e92377e0806301646l480606c2i3534ce632a3158fd@mail.gmail.com> Message-ID: El día 1 de julio de 2008 1:46, Israel Saeta Pérez escribió: > Si no acabamos la "flame war" hoy, no... ;-) Vale, solo un termino: taxonomia;-) > > > 2008/6/30 Garito : > > El día 30 de junio de 2008 22:06, Israel Saeta Pérez > > >> Por ejemplo, DTML se sigue usando en algunas hojas de estilo de Plone. > >> Supongo que cuando se desarrolle y asimile una tecnología que pueda > >> reemplazar a DTML se eliminará de la distribución principal de Zope, > >> como habrá pasado con otros muchos componentes. De hecho, no sé si se > >> incluye con Zope 3 siquiera, al menos yo no lo he visto mencionado en > >> ningún documento sobre Zope 3. > > > > Justo lo que yo te decia: esta de muerte ir llevando a los que usan Zope2 > > hacia Zope3 paulatinamente pero el esfuerzo de integrar las tecnicas del > 3 > > en el 2 es mucho mayor que el necesario para traspasar lo que haya hecho > en > > DTML a otro sistema > > Eso ya me chirria bastante > > Pero si no integras las técnicas de Z3 en Z2, incluyendo el posible > reemplazo de DTML, ¿cómo vas a traspasar DTML a ese sistema? ¿O > desarrollarías el reemplazo de DTML directamente en Z2? No lo veo > claro. El reemplazo aceptado para DTML seria Python Script + PageTemplate creo que esta todo portado en este momento > > > Si se integran técnicas de Z3 en Z2 es porque se quieren cosas de > ambos sistemas. Según he leído en la lista de discusión zope3-dev, la > idea general es que se fundan Zope 2 y Zope 3 en una especie de Zope > 5, donde Z3 aporte la arquitectura de componentes y la modularización > y Zope 2 el servidor de aplicaciones. Aunque esto último no lo he > entendido muy bien. Podria estar bien, siempre que supusiese un buen ahorro de codigo simple = ((+rapido) + (-errores) * (-mantenimiento)) ;-) jejeje > > > >> No me refiero a palabras reservadas, sino a objetos, herramientas que > >> viven en la base de datos e impiden que puedas llamar a un objeto tuyo > >> en la raíz del sitio de Plone igual. Por ejemplo, si la herramienta > >> para manejar CSS se llamase simplemente "css", ya no podrías llamar a > >> un elemento del menú "css". Y hay muchas herramientas en la raíz del > >> sitio. > > > > En todo caso existen los dominios? zope.interface... como se llama > > tecnicamente a esto, ahora no recuerdo pero la idea es esa, no? De todos > > modos eso es algo que es inerente a usar el arbol de la manera que lo > estan > > usando ellos no de la tecnologia en si... > > Los espacios de nombres de Python, que es como se llama técnicamente > al hecho de que el módulo interface esté dentro del módulo zope, no > está relacionado directamente con la imposibilidad de crear dos > objetos con el mismo nombre en el mismo nodo en la ZODB. Y, como tú > dices, es un problema inherente a la forma en la que se usa el árbol > en Z2, según yo lo entiendo. Eeesooo, los espacios de nombres, jeje. Hay una gracieta de los arboles que tiene que ver con poder poner las cosas donde mas nos guste. Por tanto 0 (cero) colisiones de nombres > > > >> >> * En Zope 2 muchos objetos derivan/derivaban de clases de mezcla > >> >> (mix-in classes) para poder ofrecer una serie de métodos estándar. > >> >> Ahora no hace falta construir objetos gigantes para mantener la > >> >> funcionalidad, sino que se adaptan objetos simples y punto. Es el > >> >> núcleo de la ZCA. > >> > > >> > No puedo hablar de este tema pues lo desconozco pero volvemos a lo > >> > mismo: > >> > matamos, en una parte importantisima de casos, moscas a cañonazos (aka > >> > el > >> > coste de esta funcionalidad es desmesurado, bajo mi opinion, con > >> > respecto a > >> > los beneficios que aporta (ni que sea en porcentajes de uso real de la > >> > plataforma) > >> > >> Estoy en total desacuerdo contigo en este aspecto. Utilizar > >> adaptadores en vez de clases gigantescas lo que hace es rebajar el > >> peso de los objetos drásticamente, y los beneficios que aporta una > >> arquitectura de componentes (zope.interfaces + zope.component) son > >> incuestionables en materia de modularidad y reusabilidad. > > > > Si yo puedo coincidir en eso perfectamente, de hecho Yanged tiene un > > mecanismo de base para eso. Si lo que yo digo es que la manera de > llevarlo a > > cabo es un poco a lo bestia, sin arte. Si al final toda esta conversacion > > tiene que ver con que en nuestro mundo hay cosas hechas con arte y cosas > que > > no lo tienen y Zope empezo siendo una obra de arte que se va deteriorando > > mas y mas. Eso en el mundo del procesado de datos implica mas errores y > mas > > lento. Arte = simple, simple = eficiente, eficiente = rapido + libre de > > error > > Lo siento, pero todavía no me he enterado bien de qué es Yangued. ¿Es > una aplicación que estás desarrollando? ¿Un framework? Yanged es un modo de ordenar la informacion > > ¿Qué es lo que te hace pensar que Zope se está deteriorando, los > esfuerzos por unir Zope 2 con Zope 3? El baremo que me hace pensar que Zope se esta deteriorando es que para hacer lo mismo tengo que hacer mas codigo. Cuando un sistema necesita programas para crear un esqueleto de aplicacion es que se puede automatizar muchisimo mas desde el mismo motor. Tanto preocuparse por los patrones y no automatizan los que ellos mismos usan. Queda raro, no? > > > > [ ... ] > >> Yo he trabajado también con Django y sé que cada uno tiene sus puntos > >> fuertes y sus puntos flacos. Puede que Zope no se adapte a tus > >> necesidades, pero eso no quiere decir que no sirva para los demás. > > > > Que sea lo mejor que tenemos no creo que signifique que sea lo mejor que > > hay. Cuando Zope empezo era muchisimo mejor, en comparacion, que lo que > es > > ahora pero solo porque sean ocupado de hacerlo mas grande sin mantenerlo > > simple > > ¿Cuando dices "cuando Zope empezó" te refieres a los inicios de Zope, > o a Zope 2, o a los inicios de Zope 3? Yo también empecé con Zope 2 y > el TTW development y la acquisition, pero pronto encuentras problemas > de reusabilidad y limpieza del espacio de nombres. Como dicen los > mandamientos de Python, "explicit is better than implicit". :-) Ves, aqui tengo mis propias dudas. Si me pongo a analizar el funcionamiento de mi propio cerebro, mas guiado por la intuicion que por la ciencia, lo confieso, mas me da la sensacion de que funciona de forma implicita mas que de forma explicita lo que me lleva a pensar que eso no es del todo necesario. El simbolismo es el que nos lleva a programar orientado a objetos. Un tema a medir un dia de estos, es cierto > > > > >> También he probado otros CMSs distintos de Plone y he conocido los > >> problemas que han tenido compañeros con ellos. Plone es, en mi > >> opinión, uno de los CMSs más potentes del mercado actualmente, si no > >> el que más. Si conoces la fórmula mágica para descomplicar Plone, es > >> decir, si sabes como desarrollar la mismas funciones sin complicarlo > >> tanto, seguro que los desarrolladores estarán encantados de > >> escucharte. Yo desde luego te apoyo. > > > > Estoy en ello, creeme. De todas maneras, en mi vida siempre he tenido que > > demostrar las cosas para que se entiendan como yo las veo asi que en vez > de > > contar lo que estoy haciendo me gustaria enseñar lo que hago y para eso > aun > > queda un rato (teniendo en cuenta que es un modo de emplear mi vida no > hay > > prisa, tambien te lo digo). Hace poco publique ZSM y solo he recibido un > > contacto que ni siquiera entendio lo que buscaba con el. Seguramente si > > hubiese publicado ZSM con todas la funcionalidades que deberia tener la > cosa > > hubiese cambiado pero entonces que gracia tendria? para eso publico > Yanged > > enterito y no a trozos > > De los que estamos aqui pocos publican su trabajo y los que lo hacen ya > > saben bien lo costoso que es para lo poco que aporta a no ser que pegue > > mucho y se forme una verdadera comunidad, un tema complicado, si > > Tampoco sé lo que es ZSM, lo siento. Evidentemente, para echar a andar > un producto en el mundo del SL y construir una comunidad en torno a él > hace falta que sea bueno. Si sigues trabajando en ZSM y en Yangued > quizá lo consigas. Si, en eso te doy la razon, tambien, de todos modos me lo miro mas como una aficion que podria (y que ya da) su rendimiento economico. Tengo la suerte de que mi mayor aficion es mi profesion, espero que como la mayoria de los de aqui Al final le dedico mas horas de las debidas tanto a ZSM como a Yanged porque tambien es un negocio, claro esta, igual que los demas Lo que pretendo con este flame ;-) es comprobar como de compartida por vosotros es esta sensacion que aqui plasmo > > > >> > >> >> > >> >> * Para desarrollar tipos de contenido en Plone en Zope 2 se necesitó > >> >> desarrollar Archetypes. Con Zope 3 (Five en este caso), las > >> >> interfaces, zope.formlib y algo más, ya no te hace falta Archetypes, > y > >> >> todo es mucho más claro y sencillo, al menos a mis ojos. > >> > > >> > Error: estas hablando de Plone, no de Zope, en Zope habia un producto > >> > llamado Formulator que, seguramente, fue el inspirador de los > >> > archetypes. De > >> > nuevo, si huviesemos (eufemismo) perdido el tiempo simplificando > >> > conceptos > >> > los archetypes no huviesen ni aparecido y huviesemos ido a parar > >> > directamente a los zope.formlib > >> > >> Bueno, aquí ya entramos en temas de política. Zope es de código > >> abierto, así que cualquiera puede modificar el código para conseguir > >> esa simplificación, distribuirlo y proponer que se mezcle con la rama > >> principal. Si no colisiona con la idea del desarrollo principal del > >> producto, es decir, si los desarrolladores (espero que "elegidos" > >> meritocráticamente) se acabará integrando, y si no (o si simplemente > >> no se pretendía fusionar con la rama principal de desarrollo del > >> producto) se hace un fork y que la comunidad elija que es lo que > >> quiere usar. Esto último es lo que yo entiendo que ha pasado con Grok > >> y con z3c.*, y así puede llover a todos los gustos. > > > > En este caso el nucleo duro de zope no es meritocratico sino los secuaces > de > > Jim Fulton creo. Por otro lado si siempre y cuando lo que ya hay hecho > sea > > aprovechable. Si lo aprovechable son cuatro conceptos y poco mas mejor > > empezar de nuevo que es lo que me esta pasando a mi con Yanged > > Date cuenta de que lo que estás insinuando es muy duro: que las > decisiones del desarrollo de Zope se toman por amiguismo en vez de > obedeciendo a razones de toda la comunidad. Digo que el nucleo duro de Zopers esta bastante enfocado y que no se dejan distraer en absoluto, simple y llanamente, no insinuo nada mas. Ni siquiera es una critica, es mas bien un hecho > > > La verdad que acabo de leer unos mensajes en la lista de zope3-dev > sobre el futuro de Zope 2 y Zope 3 y se nota tensión en el ambiente. > Jim Fulton quiere el modelo 2+3=5, pero hay otros que quieren > reescribir las partes de Z2 a Z3 para hacerlas más claras. Jejeje Si pudieseis opinar que hariais vosotros en esta discusion? > > > > [...] > >> Sobre estructuras de almacenamiento de datos y sistemas de archivos no > >> tengo casi ni idea, pero supongo que cuando desarrollaron la ZODB no > >> existía ZFS, y lo hicieron como alternativa al modelo relacional. Si > >> ZFS es tan potente, algún día alguien implementará una clase del tipo > >> "Persistent" en ZFS en vez de en la ZODB, se podrá usar lo que se > >> quiera, y todos contentos. > > > > Una cerveza a que el producto sale pero no por el nucleo duro de > Zopers... > > Depende de a quién consideres el núcleo duro. Ten en cuenta que si la > gente del núcleo duro está muy volcada en el desarrollo interno de Z3 > con su ZODB de serie, que les funciona, no se van a poner a buscar > otros métodos para implementar la misma funcionalidad o más, por no > liarse. A veces volcarse demasiado implica perder el resto del mundo de vista Y puestos a volcarse quienes de vosotros opinais que si me tengo que volcar en algo que no sea producir (reescribir el entorno de programacion no es producir, os lo aseguro) me vuelco en hacer las cosas mas simples? > > > > [...] > > Me voy a dormir, que ya es hora. > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080701/718c8fe9/attachment-0001.html From dpico en dsic.upv.es Tue Jul 1 04:34:47 2008 From: dpico en dsic.upv.es (=?ISO-8859-1?Q?David_Pic=F3_Vila?=) Date: Tue Jul 1 05:03:02 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: <5e92377e0806301110w6db12d9eq2e75b318130d752c@mail.gmail.com> References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300909s3dc5b720kd9ba67665b612ae5@mail.gmail.com> <5e92377e0806301019w6a3c8e4dved1b53fffff3a250@mail.gmail.com> <5e92377e0806301110w6db12d9eq2e75b318130d752c@mail.gmail.com> Message-ID: <2D9FDA47-4683-4EC2-83D4-9670376DA35B@dsic.upv.es> Madre mía. No sabéis cómo estoy agradeciendo este hilo de discusión. Estoy por la segunda lectura del libro de Aspeli y sigo sin entender ni la mitad de lo que dice. Estaba empezando a considerarme idiota perdido. Me defiendo haciendo cosillas sencillas con Plone 3, pero ahora necesito escribir algún producto más complicado y se me hace un mundo, sobre todo porque aún no he conseguido entender la arquitectura del asunto ni cómo manejarme con las infinitas clases, funciones, objetos, interfaces, etc. ¿Alguien me puede recomendar las lecturas que debo hacer (¡y el orden en que debo hacerlas!)? Otra pregunta: por un post de aquí he estado mirándome un poco Django. Realmente parece muchísimo más sencillo. ¿Permite fácilmente crear interfaces de usuario para que los miembros de un sitio introduzcan su perfil y gestionen cierta información "propia"? Es lo que necesito ahora mismo. Un saludo David El 30/06/2008, a las 20:10, Israel Saeta Pérez escribió: > On Mon, Jun 30, 2008 at 7:48 PM, Danny Navarro > wrote: >> >> On 30-Jun-08, at 7:19 PM, Israel Saeta Pérez wrote: >> >>> El problema es que yo necesito desarrollar un proyecto bajo Plone >>> 3, y >>> dudo mucho que se puedan utilizar componentes de Grok en Plone sin >>> que >>> estalle todo por los aires. >> >> Hay un egg en desarrollo muy activo para usar grok en plone. >> http://svn.zope.org/five.grok/trunk/ > > Le he echado un vistazo y tampoco he visto mucho trabajo hecho, la > verdad. Y yo necesito empezar a trabajar la semana que viene. :-P > > Gracias de todsa formas. > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es From mlarreategi en codesyntax.com Tue Jul 1 08:57:31 2008 From: mlarreategi en codesyntax.com (Mikel Larreategi) Date: Tue Jul 1 08:57:39 2008 Subject: =?UTF-8?Q?Re:_[Zope-es]_z3c_-_=C2=BFrecomendable=3F?= In-Reply-To: <2D9FDA47-4683-4EC2-83D4-9670376DA35B@dsic.upv.es> References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300909s3dc5b720kd9ba67665b612ae5@mail.gmail.com> <5e92377e0806301019w6a3c8e4dved1b53fffff3a250@mail.gmail.com> <5e92377e0806301110w6db12d9eq2e75b318130d752c@mail.gmail.com> <2D9FDA47-4683-4EC2-83D4-9670376DA35B@dsic.upv.es> Message-ID: El día 1 de julio de 2008 4:34, David Picó Vila escribió: > Madre mía. No sabéis cómo estoy agradeciendo este hilo de discusión. Estoy > por la segunda lectura del libro de Aspeli y sigo sin entender ni la mitad > de lo que dice. Estaba empezando a considerarme idiota perdido. Buenas: Llego al trabajo y me encuentro con este pedazo de thread !!! ahahahhahha !!! :) No voy a entrar en mayores discusiones, dado que opino más o menos como Santiago e Israel, pero respecto al libro de Martin "Professional Plone Development" quisiera hacer una pregunta: ¿qué es lo que no se entiende? Entiendo perfectamente que si nos leemos el libro sin tener ni idea de Plone y Zope nos encontremos perdidos. Yo por ejemplo me lo empecé a leer cuando me llegó (justo unos días antes de la conferencia de Nápoles), y me pareció excelente ! Eso sí, antes de ello había leído también el libro de Phillip (Web Component Development with Zope 3), y también había hecho muchas cositas con Plone 2.5.x. Gracias a la inclusión de paradigmas de Zope3 en Zope2 vía Five e incluyendo código de Zope3 en Zope2, creo que tanto Zope2 como Plone han ganado mucho. Plone ha evolucionado mucho desde que lo cogí en la versión 2.1 hasta la 3.1 de ahora, el primer salto fué con las vistas en los portlets en Plone 2.5 y luego el gran salto en Plone 3, pero en mi opinión ha sido positivo. A lo que iba ¿qué es lo *chungo* del libro de Martin? Saludos, Mikel > > Me defiendo haciendo cosillas sencillas con Plone 3, pero ahora necesito > escribir algún producto más complicado y se me hace un mundo, sobre todo > porque aún no he conseguido entender la arquitectura del asunto ni cómo > manejarme con las infinitas clases, funciones, objetos, interfaces, etc. > ¿Alguien me puede recomendar las lecturas que debo hacer (¡y el orden en que > debo hacerlas!)? > > Otra pregunta: por un post de aquí he estado mirándome un poco Django. > Realmente parece muchísimo más sencillo. ¿Permite fácilmente crear > interfaces de usuario para que los miembros de un sitio introduzcan su > perfil y gestionen cierta información "propia"? Es lo que necesito ahora > mismo. > > Un saludo > David > > > > El 30/06/2008, a las 20:10, Israel Saeta Pérez escribió: > >> On Mon, Jun 30, 2008 at 7:48 PM, Danny Navarro >> wrote: >>> >>> On 30-Jun-08, at 7:19 PM, Israel Saeta Pérez wrote: >>> >>>> El problema es que yo necesito desarrollar un proyecto bajo Plone 3, y >>>> dudo mucho que se puedan utilizar componentes de Grok en Plone sin que >>>> estalle todo por los aires. >>> >>> Hay un egg en desarrollo muy activo para usar grok en plone. >>> http://svn.zope.org/five.grok/trunk/ >> >> Le he echado un vistazo y tampoco he visto mucho trabajo hecho, la >> verdad. Y yo necesito empezar a trabajar la semana que viene. :-P >> >> Gracias de todsa formas. >> >> -- >> Israel Saeta Pérez >> http://dukebody.com >> _______________________________________________ >> Zope-es mailing list >> Zope-es@aditel.org >> http://listas.aditel.org/listinfo/zope-es > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mikel Larreategi mlarreategi@codesyntax.com CodeSyntax Azitaingo Industrialdea 3 K E-20600 Eibar Tel: (+34) 943 82 17 80 From dpico en dsic.upv.es Tue Jul 1 10:54:38 2008 From: dpico en dsic.upv.es (=?ISO-8859-1?Q?David_Pic=F3_Vila?=) Date: Tue Jul 1 10:54:45 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300909s3dc5b720kd9ba67665b612ae5@mail.gmail.com> <5e92377e0806301019w6a3c8e4dved1b53fffff3a250@mail.gmail.com> <5e92377e0806301110w6db12d9eq2e75b318130d752c@mail.gmail.com> <2D9FDA47-4683-4EC2-83D4-9670376DA35B@dsic.upv.es> Message-ID: <7A89EDF1-32C4-4951-B2B8-143FBDF8D928@dsic.upv.es> El 01/07/2008, a las 8:57, Mikel Larreategi escribió: > > A lo que iba ¿qué es lo *chungo* del libro de Martin? Para mi lo chungo es que da por supuestas muchas cosas, respecto a Zope y la arquitectura Zope+Plone, y, por lo menos a mí, me cuesta mucho orientarme respecto a qué es de qué. Por lo que estoy leyendo en este thread veo que, como mínimo, me tengo que leer YA el libro de Philip. Mi pregunta para Mikel sería: ¿qué hay que saberse bien previamente para poder entender bien el libro de Martin? Saludos David From mlarreategi en codesyntax.com Tue Jul 1 11:05:33 2008 From: mlarreategi en codesyntax.com (Mikel Larreategi) Date: Tue Jul 1 11:05:42 2008 Subject: =?UTF-8?Q?Re:_[Zope-es]_z3c_-_=C2=BFrecomendable=3F?= In-Reply-To: <7A89EDF1-32C4-4951-B2B8-143FBDF8D928@dsic.upv.es> References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300909s3dc5b720kd9ba67665b612ae5@mail.gmail.com> <5e92377e0806301019w6a3c8e4dved1b53fffff3a250@mail.gmail.com> <5e92377e0806301110w6db12d9eq2e75b318130d752c@mail.gmail.com> <2D9FDA47-4683-4EC2-83D4-9670376DA35B@dsic.upv.es> <7A89EDF1-32C4-4951-B2B8-143FBDF8D928@dsic.upv.es> Message-ID: El día 1 de julio de 2008 10:54, David Picó Vila escribió: > > El 01/07/2008, a las 8:57, Mikel Larreategi escribió: >> >> A lo que iba ¿qué es lo *chungo* del libro de Martin? > > Para mi lo chungo es que da por supuestas muchas cosas, respecto a Zope y la > arquitectura Zope+Plone, y, por lo menos a mí, me cuesta mucho orientarme > respecto a qué es de qué. Por lo que estoy leyendo en este thread veo que, > como mínimo, me tengo que leer YA el libro de Philip. > > Mi pregunta para Mikel sería: ¿qué hay que saberse bien previamente para > poder entender bien el libro de Martin? Previamente a empezar a leer el libro habría que empezar leyendo el Capítulo 9 del libro como dice Phillip: http://www.z3lab.org/sections/blogs/philipp-weitershausen/2008_01_25_professional-plone Y también el funcionamiento básico de Plone (skins, GenericSetup) así como lo básico sobre interfaces, ZCML y tal, que vienen tanto en el citado capítulo 9 como en el libro de Phillip. Mikel -- Mikel Larreategi mlarreategi@codesyntax.com CodeSyntax Azitaingo Industrialdea 3 K E-20600 Eibar Tel: (+34) 943 82 17 80 From vimes656 en gmail.com Tue Jul 1 11:48:37 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Tue Jul 1 11:48:50 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: <7A89EDF1-32C4-4951-B2B8-143FBDF8D928@dsic.upv.es> References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300909s3dc5b720kd9ba67665b612ae5@mail.gmail.com> <5e92377e0806301019w6a3c8e4dved1b53fffff3a250@mail.gmail.com> <5e92377e0806301110w6db12d9eq2e75b318130d752c@mail.gmail.com> <2D9FDA47-4683-4EC2-83D4-9670376DA35B@dsic.upv.es> <7A89EDF1-32C4-4951-B2B8-143FBDF8D928@dsic.upv.es> Message-ID: <7403FCFC-4F03-4672-BC82-592EE4C283B5@gmail.com> Hola, La verdad es que yo no tengo pensado aprender Plone en un futuro cercano pero para aprender Zope3 a mí me está ayudando mucho empezar con Grok (http://grok.zope.org). Es muy fácil y la evolución hacia conceptos más avanzados de Zope3 se hace natural. Puedes echarle un vistazo al tutorial (http://grok.zope.org/documentation/book/). La comunidad de Grok es muy activa ahora, se están añadiendo tutoriales y Howtos bastante rápido. Creo que Grok resuelve muchos problemas sobre Zope3 mencionados en este thread. Es menos estricto, con el riesgo que eso conlleva, y te quitas el ZCML que se puede hacer muy raro si estás acostumbrado a escribir en Python. La idea es un Zope3 para las masas. Plone es otra historia, ha crecido mucho, lleva mucho lastre histórico y la evolución tiene que ser muy suave. No se pueden permitir una revolución drástica porque hay mucha dependencia en Zope2. Hay algunas iniciativas para hacer clones de Plone en Zope3 puro pero resulta muy difícil reconstruir la comunidad que Plone tiene ahora. La gran ventaja, en mi opinión, de Plone es que hay un montón de productos que pueden hacer lo que tengas pensado y por supuesto, lo activa que es la comunidad que te puede resolver cualquier problema específico que te encuentres. Si llevas tiempo siguiendo Plone puedes tener algo funcionando muy rápido. Para mi área de trabajo no puedo reutilizar muchos productos hechos para Plone aunque de vez en cuando "carroñeo" algo de código de algún producto de Plone. Esa es mi opinión. BTW, hay algún canal de IRC de zope-es? Estaré en #zope-es en irc.freenode.net por si alguién quiere entrar. Danny On 01-Jul-08, at 10:54 AM, David Picó Vila wrote: > > El 01/07/2008, a las 8:57, Mikel Larreategi escribió: >> >> A lo que iba ¿qué es lo *chungo* del libro de Martin? > > Para mi lo chungo es que da por supuestas muchas cosas, respecto a > Zope y la arquitectura Zope+Plone, y, por lo menos a mí, me cuesta > mucho orientarme respecto a qué es de qué. Por lo que estoy leyendo > en este thread veo que, como mínimo, me tengo que leer YA el libro > de Philip. > > Mi pregunta para Mikel sería: ¿qué hay que saberse bien previamente > para poder entender bien el libro de Martin? > > Saludos > David_______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es From dukebody en gmail.com Sat Jul 5 23:50:07 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Sat Jul 5 23:50:23 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300955l786e9547nea0f4f75881df346@mail.gmail.com> <5e92377e0806301054m18c6dadan8e50c76aa6bc257a@mail.gmail.com> <5e92377e0806301306n2cad71b0s7928d2b7bf2b3b8a@mail.gmail.com> <5e92377e0806301646l480606c2i3534ce632a3158fd@mail.gmail.com> Message-ID: <5e92377e0807051450q1a31f066te6605f635b65fbdc@mail.gmail.com> 2008/7/1 Garito : > El día 1 de julio de 2008 1:46, Israel Saeta Pérez >> La verdad que acabo de leer unos mensajes en la lista de zope3-dev >> sobre el futuro de Zope 2 y Zope 3 y se nota tensión en el ambiente. >> Jim Fulton quiere el modelo 2+3=5, pero hay otros que quieren >> reescribir las partes de Z2 a Z3 para hacerlas más claras. > > Jejeje > Si pudieseis opinar que hariais vosotros en esta discusion? Yo reescribiría para hacer las cosas más claras y dejaría un "Five al revés", es decir, un programa para integrar Z2 en Z3, como producto para que se pudiera ejecutar código antiguo. Así que, en el fondo, una mezcla entre las dos opciones. Aunque realmente no sé qué es lo que tiene Z2 que no se pueda reescribir más o menos fácilmente en Z3 para tener que dejar la integración hacia atrás que comento. ¿Tenéis alguna idea sobre esto el resto de miembros? -- Israel Saeta Pérez http://dukebody.com From dukebody en gmail.com Sun Jul 6 00:40:22 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Sun Jul 6 00:40:29 2008 Subject: [Zope-es] El futuro de Zope Message-ID: <5e92377e0807051540m21542133q97787921bf5eb25@mail.gmail.com> Creo que es importante que de los enlaces a la información que he consultado yo, en inglés irremediablemente: http://en.wikipedia.org/wiki/Zope#Five_and_the_Future_of_Zope http://mail.zope.org/pipermail/zope3-dev/2006-February/018415.html La tensión del "are you kidding" - "no, I'm not kidding" (o semejante) no tiene desperdicio. 2008/7/5 Israel Saeta Pérez : > 2008/7/1 Garito : >> El día 1 de julio de 2008 1:46, Israel Saeta Pérez >>> La verdad que acabo de leer unos mensajes en la lista de zope3-dev >>> sobre el futuro de Zope 2 y Zope 3 y se nota tensión en el ambiente. >>> Jim Fulton quiere el modelo 2+3=5, pero hay otros que quieren >>> reescribir las partes de Z2 a Z3 para hacerlas más claras. >> >> Jejeje >> Si pudieseis opinar que hariais vosotros en esta discusion? > > Yo reescribiría para hacer las cosas más claras y dejaría un "Five al > revés", es decir, un programa para integrar Z2 en Z3, como producto > para que se pudiera ejecutar código antiguo. Así que, en el fondo, una > mezcla entre las dos opciones. > > Aunque realmente no sé qué es lo que tiene Z2 que no se pueda > reescribir más o menos fácilmente en Z3 para tener que dejar la > integración hacia atrás que comento. ¿Tenéis alguna idea sobre esto el > resto de miembros? > > -- > Israel Saeta Pérez > http://dukebody.com > -- Israel Saeta Pérez http://dukebody.com From vimes656 en gmail.com Sun Jul 6 02:49:50 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Sun Jul 6 02:50:02 2008 Subject: [Zope-es] canal #zope-es en irc.freenode.net Message-ID: <22E7C75C-5F79-4FA2-93E4-04B73DCA7132@gmail.com> Hola a todos, Estos días he estado por el canal de #zope-es en irc.freenode.net. La mayor parte del tiempo estaba solo pero de vez en cuando algún zopista se ha dejado ver. Hoy hemos estado 3 personas, dukebody, oggers y yo. Hemos tenido un debate acalorado sobre bzr y hg. Luego hemos hablado de cómo recrear un widget out-of-the-box de archetypes para poder usarlo en formlib o z3c.form. Os animo a que os paséis. Si sabéis de algún otro canal sobre zope en castellano en otro servidor de IRC hacédmelo saber. Un saludo, Danny From dukebody en gmail.com Sun Jul 6 11:26:01 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Sun Jul 6 11:26:06 2008 Subject: [Zope-es] canal #zope-es en irc.freenode.net In-Reply-To: <22E7C75C-5F79-4FA2-93E4-04B73DCA7132@gmail.com> References: <22E7C75C-5F79-4FA2-93E4-04B73DCA7132@gmail.com> Message-ID: <5e92377e0807060226o6763c9b3yb13161446e2cae4a@mail.gmail.com> 2008/7/6 Danny Navarro : > Luego hemos hablado de cómo recrear un widget > out-of-the-box de archetypes para poder usarlo en formlib o z3c.form. Porfi, pasadme el log y escribimos un HowTo en plone-es.org, si algún día funciona bien. -- Israel Saeta Pérez http://dukebody.com From vimes656 en gmail.com Sun Jul 6 13:08:09 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Sun Jul 6 13:08:23 2008 Subject: [Zope-es] canal #zope-es en irc.freenode.net In-Reply-To: <5e92377e0807060226o6763c9b3yb13161446e2cae4a@mail.gmail.com> References: <22E7C75C-5F79-4FA2-93E4-04B73DCA7132@gmail.com> <5e92377e0807060226o6763c9b3yb13161446e2cae4a@mail.gmail.com> Message-ID: <8B40F627-C3A3-4FFE-9EA8-BFA98048167E@gmail.com> Israel, He perdido la conversación pero tampoco era un howto a tiro fijo, era más unos consejos de dónde mirar widgets existentes que puedan tener los de archetypes y de cómo se pueden crear tus propios widgets. Cuando le funcione a ogger se puede poner en algún blog. Danny On 06-Jul-08, at 11:26 AM, Israel Saeta Pérez wrote: > 2008/7/6 Danny Navarro : >> Luego hemos hablado de cómo recrear un widget >> out-of-the-box de archetypes para poder usarlo en formlib o z3c.form. > > Porfi, pasadme el log y escribimos un HowTo en plone-es.org, si algún > día funciona bien. > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es From garito en sistes.net Sun Jul 6 17:16:41 2008 From: garito en sistes.net (Garito) Date: Sun Jul 6 17:30:29 2008 Subject: =?ISO-8859-1?Q?Re:_[Zope-es]_z3c_-_=BFrecomendable=3F?= In-Reply-To: <5e92377e0807051450q1a31f066te6605f635b65fbdc@mail.gmail.com> References: <5e92377e0806281238w2888ecbdg5d600a317080419@mail.gmail.com> <5e92377e0806300955l786e9547nea0f4f75881df346@mail.gmail.com> <5e92377e0806301054m18c6dadan8e50c76aa6bc257a@mail.gmail.com> <5e92377e0806301306n2cad71b0s7928d2b7bf2b3b8a@mail.gmail.com> <5e92377e0806301646l480606c2i3534ce632a3158fd@mail.gmail.com> <5e92377e0807051450q1a31f066te6605f635b65fbdc@mail.gmail.com> Message-ID: Hola! Como el hilo se ha enfriado lo voy a dar por acabado, gracias a todos por vuestras opiniones y puntos de vista. Habies satisfecho el objetivo de la consulta con creces A modo de conclusion diria que los que han participado no ven con malos ojos el caliz que estan tomando las cosas en esto del Zope, enhorabuena para los Zopers Lo que mas me llama la atencion, no obstante, es que lo simple tiene valor secundario o, directamente, da igual. Me siento mas friki que nunca ahora mismo (si, porque friki en una lista de frikis...) Saludos y gracias ! El día 5 de julio de 2008 23:50, Israel Saeta Pérez escribió: > 2008/7/1 Garito : > > El día 1 de julio de 2008 1:46, Israel Saeta Pérez > >> La verdad que acabo de leer unos mensajes en la lista de zope3-dev > >> sobre el futuro de Zope 2 y Zope 3 y se nota tensión en el ambiente. > >> Jim Fulton quiere el modelo 2+3=5, pero hay otros que quieren > >> reescribir las partes de Z2 a Z3 para hacerlas más claras. > > > > Jejeje > > Si pudieseis opinar que hariais vosotros en esta discusion? > > Yo reescribiría para hacer las cosas más claras y dejaría un "Five al > revés", es decir, un programa para integrar Z2 en Z3, como producto > para que se pudiera ejecutar código antiguo. Así que, en el fondo, una > mezcla entre las dos opciones. > > Aunque realmente no sé qué es lo que tiene Z2 que no se pueda > reescribir más o menos fácilmente en Z3 para tener que dejar la > integración hacia atrás que comento. ¿Tenéis alguna idea sobre esto el > resto de miembros? > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080706/9ceda7c9/attachment.html From santiago.videla en gmail.com Mon Jul 7 02:09:10 2008 From: santiago.videla en gmail.com (Santiago Videla) Date: Mon Jul 7 02:09:23 2008 Subject: [Zope-es] canal #zope-es en irc.freenode.net In-Reply-To: <22E7C75C-5F79-4FA2-93E4-04B73DCA7132@gmail.com> References: <22E7C75C-5F79-4FA2-93E4-04B73DCA7132@gmail.com> Message-ID: > Si sabéis de algún otro canal sobre zope en castellano en otro servidor de > IRC hacédmelo saber. > desde el sur del mundo, nos juntamos algunos en : #plone-conosur saludos > > Un saludo, > > Danny_______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Santiago Videla www.revolucionesweb.com.ar http://www.linkedin.com/in/svidela Sigue la mata dando de que hablar siempre abajo y a la izquierda donde el pensamiento que se hace corazón resplandece con la palabra sencilla y humilde que l@s tod@s somos. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080706/f69e746b/attachment.htm From jaidafuerte en gmail.com Tue Jul 8 00:10:38 2008 From: jaidafuerte en gmail.com (jaimedavid villafuerte) Date: Tue Jul 8 00:10:46 2008 Subject: [Zope-es] david villafuerte Message-ID: Por favor donde puedo encontrar documentacion en español sobre zope3 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080707/a5f57e55/attachment.html From rover en menttes.com Tue Jul 8 00:21:04 2008 From: rover en menttes.com (Roberto Allende) Date: Tue Jul 8 00:28:00 2008 Subject: [Zope-es] david villafuerte In-Reply-To: References: Message-ID: <487296D0.1090108@menttes.com> jaimedavid villafuerte wrote: > Por favor donde puedo encontrar documentacion en español sobre zope3 http://www.muthukadan.net/docs/zca-es.pdf Lorenzo Gil Sanchez tradujo el libro de Baiju M "Arquitectura de Componentes de Zope". Nos es como el libro de Philip y no estoy seguro que sea un libro para comenzar.. pero es lo que hay en español saludos r. -- http://robertoallende.com From dukebody en gmail.com Tue Jul 8 13:20:15 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Tue Jul 8 13:20:29 2008 Subject: [Zope-es] david villafuerte In-Reply-To: <487296D0.1090108@menttes.com> References: <487296D0.1090108@menttes.com> Message-ID: <5e92377e0807080420r1cbf3a4bwe0d6c129fd3c0650@mail.gmail.com> Si quieres usar Zope 3 sin saber inglés lo tienes bastante chungo. El libro de Baiju M. trata la arquitectura de componentes, pero no puedes ponerte a hacer una página web ni de broma leyendo sólo ese mini-libro. Si tienes alguna duda _concreta_ sobre Zope 3, no dudes en preguntar a la lista, que para eso estamos. On Tue, Jul 8, 2008 at 12:21 AM, Roberto Allende wrote: > jaimedavid villafuerte wrote: >> >> Por favor donde puedo encontrar documentacion en español sobre zope3 > > http://www.muthukadan.net/docs/zca-es.pdf > Lorenzo Gil Sanchez tradujo el libro de Baiju M "Arquitectura de Componentes > de Zope". Nos es como el libro de Philip y no estoy seguro que sea un libro > para comenzar.. pero es lo que hay en español > > saludos > r. > > -- > http://robertoallende.com > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Israel Saeta Pérez http://dukebody.com From miuler en gmail.com Wed Jul 9 04:44:24 2008 From: miuler en gmail.com (Hector Miuler Malpica Gallegos) Date: Wed Jul 9 04:44:36 2008 Subject: [Zope-es] Python GIS (PCL, ZCO, zgeo, PrimaGIS) Message-ID: <1215571464.19040.18.camel@miuler.miuler.dyndns.org> Saltado el tipo de contenido multipart/alternative------------ próxima parte ------------ Se ha borrado un mensaje que no está en formato texto plano... Nombre : no disponible Tipo : application/pgp-signature Tamaño : 189 bytes Descripción: Esta parte del mensaje =?ISO-8859-1?Q?está? digitalmente Url : /archivos/zope-es/attachments/20080708/603b4826/attachment.pgp From dukebody en gmail.com Wed Jul 9 08:20:56 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Wed Jul 9 08:21:04 2008 Subject: [Zope-es] Python GIS (PCL, ZCO, zgeo, PrimaGIS) In-Reply-To: <1215571464.19040.18.camel@miuler.miuler.dyndns.org> References: <1215571464.19040.18.camel@miuler.miuler.dyndns.org> Message-ID: <5e92377e0807082320g103ab27eubb30baaecdeed68e@mail.gmail.com> Yo no tengo ni idea de módulos para trabajar con GIS, pero ten en cuenta que en principio un producto diseñado para Plone 3 lo puedes adaptar sin demasiados problemas para que funcione con Zope 3, es decir, puedes coger los módulos de PrimaGIS que no dependan de Plone e implementar tú el resto, fijándote en los que sí dependen. 2008/7/9 Hector Miuler Malpica Gallegos : > Hola amigos, me da gusto escuchar ciertos hilos sobre zope3 como el que se > trato hace unos días. Bueno en este caso mi correo es por otro motivo, es > por GIS, eh la pagina gispython.org he encontrado algunos modulos > interesantes, uno de ellos es PCL (Librería Cartográfica Python), el otro es > ZCO (Objetos Cartográficos Zope), y zgeo que al parecer ZCO engloba lo que > es zgeo. y por ultimo PrimaGIS, para lo cual parece utilizar los anteriores, > pero orientado a Plone. > > Con todo estoy ya estoy un poco mareado, por lo que decidí instalar con > easy_install zgeo.geographer, pero para mi sorpresa no tenía ninguna > dependencia con PCL, luego para más sorpresa, esta modulo casi no implementa > nada. > > Llegado a este punto decidí retornar a PrimaGIS, claro no lo vi desde el > inicio porque yo no uso plone, yo estoy tratando de mudar mi antiguo site > basado en php a Zope3. Revisando me encuentro en su codigo, que este si > depende directamente de PCL. Este primagis, implementa varias interfaces, > pero obviamente orientado a Plone. > > Mi pregunta es, ¿Alguien tiene experiencia con estos modulos? ¿que > recomiendan para gis en python? Tengan en cuenta que ahora estoy tratando de > basar cualquier codigo en zope3. > > > ???? _\|/_ > (O-O) > --oOO-(_)-OOo--------------------------- > Hector Miuler Malpica Gallegos > Universidad Nacional del Callao - Peru > Escuela de Ingenieria Electronica > > usuario registrado #308608 > > > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Israel Saeta Pérez http://dukebody.com From ahumboldt en humboldt.e.telefonica.net Wed Jul 9 14:56:16 2008 From: ahumboldt en humboldt.e.telefonica.net (Administrador) Date: Wed Jul 9 14:56:37 2008 Subject: [Zope-es] Comandos UPDATE en ZSQL objetcs Message-ID: <02fe318ea79f8092e0acb2c8059c7e01@humboldt.e.telefonica.net> Hola lista, Desde hace ya bastante tiempo uso multitud de objetos ZSQL para realizar comandos UPDATE en MySQL. Cada objeto ZSQL tiene una serie de parámetros correspondientes a todas las columnas de una determinada tabla. Para cada parámetro compruebo con un dtml-if si se ha proporcionado un valor, y en caso contrario, en lugar de dejar el valor que estaba en la tabla, me interesa ponerlo a NULL. Por ejemplo: ------------------------------------------------------------ args: param0 param1 param2 param3 UPDATE tabla SET param1 =, param1 =NULL, param2 =, param2 =NULL, param3 = param3 =NULL ------------------------------------------------------------ Sin embargo, he mirado por Internet una forma de compactar este código DTML tan grande para una operación tan repetitiva y sencilla, y he visto que alguien hace un tiempo hizo un parche que implementa tags y . 1) ¿Alguien lo ha probado y le va bien? ¿Es difícil/insegura la instalación? 2) ¿Vendría bien para mi caso en el que si para un parámetro no se proporciona un valor quiero establecerlo siempre a NULL? 3) ¿A alguien se le ocurre otra alternativa? Muchas gracias por su tiempo!!! From miuler en gmail.com Wed Jul 9 18:20:42 2008 From: miuler en gmail.com (Hector Miuler Malpica Gallegos) Date: Wed Jul 9 18:20:53 2008 Subject: [Zope-es] Zope3 ya corre con python2.5? Message-ID: <1215620442.32254.6.camel@miuler.miuler.dyndns.org> Saltado el tipo de contenido multipart/alternative------------ próxima parte ------------ Se ha borrado un mensaje que no está en formato texto plano... Nombre : no disponible Tipo : application/pgp-signature Tamaño : 189 bytes Descripción: Esta parte del mensaje =?ISO-8859-1?Q?está? digitalmente Url : /archivos/zope-es/attachments/20080709/23da6608/attachment-0001.pgp From vimes656 en gmail.com Wed Jul 9 21:05:57 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Wed Jul 9 21:06:18 2008 Subject: [Zope-es] Zope3 ya corre con python2.5? In-Reply-To: <1215620442.32254.6.camel@miuler.miuler.dyndns.org> References: <1215620442.32254.6.camel@miuler.miuler.dyndns.org> Message-ID: <8681F509-54BC-4269-911E-64C3678F5253@gmail.com> Hola Hector, El año pasado hubo un proyecto de Google Summer of Code que portó los paquetes principales de zope3 a Python 2.5. Los tests pasan con Python2.5 pero Zope Corporation no quiere reclamar que soporta oficialmente Zope3 en Python2.5 hasta que Zope2 no soporte Python2.5. Este año hay otro proyecto en el Google Summer of Code que está portando Zope2 (y en teoría Plone) a Python2.5. Conclusión, correr Grok en Python2.5 no debería dar en teoría ningún problema. Pero si no usas nada específico de Python2.5 te recomendaría, por si acaso, usar Python2.4. Prueba bin/zopetcl fg en vez de bin/zopectl run. Danny On 09-Jul-08, at 6:20 PM, Hector Miuler Malpica Gallegos wrote: > Hola amigos, se que ahí tenían la intención de portar zope3 a > python2.5, pero no se si ya lo lograron, ¿alguien sabe algo al > respecto? Yo aún sigo compilando contra python2.4 y tengo problema > con grok, > > Al hacer un ./bin/zopectl run se queda congelado, luego al hacer > un Ctrl+C me sale el siguiente error: > > http://pastebin.com/d14c0cacf > > >  _\|/_ > (O-O) > --oOO-(_)-OOo--------------------------- > Hector Miuler Malpica Gallegos > Universidad Nacional del Callao - Peru > Escuela de Ingenieria Electronica > > usuario registrado #308608 > > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080709/88e7d2aa/attachment.html From dukebody en gmail.com Wed Jul 9 23:34:05 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Wed Jul 9 23:34:14 2008 Subject: [Zope-es] Comandos UPDATE en ZSQL objetcs In-Reply-To: <02fe318ea79f8092e0acb2c8059c7e01@humboldt.e.telefonica.net> References: <02fe318ea79f8092e0acb2c8059c7e01@humboldt.e.telefonica.net> Message-ID: <5e92377e0807091434s409c4b78w58c49192d8a348c8@mail.gmail.com> Yo no sé nada de objetos ZSQL, sólo sé que el lenguaje DTML ya casi no se usa, y una alternativa que propone Martin Aspeli es usar SQLAlchemy, una biblioteca en Python que no depende de Zope, junto con collective.lead para integrar las transacciones SQL con las transacciones del resto de Zope. Relacionado: http://plone.org/documentation/tutorial/creating-sql-content-types-with-collective.tin/ 2008/7/9 Administrador : > Hola lista, > Desde hace ya bastante tiempo uso multitud de objetos ZSQL para realizar > comandos UPDATE en MySQL. > Cada objeto ZSQL tiene una serie de parámetros correspondientes a todas las > columnas de una determinada tabla. > Para cada parámetro compruebo con un dtml-if si se ha proporcionado un > valor, y en caso contrario, en lugar de dejar el valor que estaba en la > tabla, me interesa ponerlo a NULL. > Por ejemplo: > > ------------------------------------------------------------ > args: param0 param1 param2 param3 > > UPDATE tabla SET > > > param1 =, > > param1 =NULL, > > > param2 =, > > param2 =NULL, > > > param3 = > > param3 =NULL > > > > > > ------------------------------------------------------------ > > Sin embargo, he mirado por Internet una forma de compactar este código DTML > tan grande para una operación tan repetitiva y sencilla, y he visto que > alguien hace un tiempo hizo un parche que implementa tags set> y . > > 1) ¿Alguien lo ha probado y le va bien? ¿Es difícil/insegura la instalación? > 2) ¿Vendría bien para mi caso en el que si para un parámetro no se > proporciona un valor quiero establecerlo siempre a NULL? > 3) ¿A alguien se le ocurre otra alternativa? > > Muchas gracias por su tiempo!!! > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Israel Saeta Pérez http://dukebody.com From dukebody en gmail.com Thu Jul 10 16:03:32 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Thu Jul 10 16:03:40 2008 Subject: [Zope-es] Personalizar longitud de un input en zope.formlib Message-ID: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> Hola, Estoy intentando crear un formulario de búsqueda con varios campos con zope.formlib, todos de tipo texto. He definido el esquema del formulario con zope.schema, utilizando para todos los campos schema.TextLine. Mi problema es que, al pasar este esquema a formlib mediante form_fields = form.FormFields(ISearch), el widget HTML que al final representa es un input con size="20" y, por motivos de diseño, yo lo quiero con un tamaño menor. He estado mirando el código de formlib un rato y no he encontrado ninguna forma sencilla de indicarle el tamaño del widget, o el nombre de otro widget que quiera utilizar en vez del que viene por defecto. El código del widget que se utiliza está en zope.app.form.browser.textWidget, que tiene a fuego (hardcoded) el valor de displayWidth=20. ¿Conoce alguien alguna forma de conseguir lo que busco? Gracias de antemano. -- Israel Saeta Pérez http://dukebody.com From okelet en gmail.com Thu Jul 10 17:42:33 2008 From: okelet en gmail.com (=?ISO-8859-1?Q?Juan_Asensio_S=E1nchez?=) Date: Thu Jul 10 17:42:45 2008 Subject: [Zope-es] Error al instalar LDAPUserFolder Message-ID: <52a9d2e30807100842s5a23c167id13e7ff9fae7d7bf@mail.gmail.com> Hola He pusto este mismo mensaje en las listas de Plone, pero no he obtenido respuesta; a ver si me podéis ayudar. Estoy empezando con Plone. He instalado Plone3 desde los repositorios backports de Debian en una Debian Etch. La instalación básica funciona correctamente. Ahora quiero instalarle el soporte para LDAP para que los usuarios se autentifiquen contra un servidor OpenLDAP o Active Directory. Estoy usando esta guía: http://plone.org/products/ploneldap Cuando intento instalar el producto con easy_install me salta este error (antes de esto he instalado python-ldap, logicamente): =========================================================== plone:~# easy_install Products.LDAPUserFolder Searching for Products.LDAPUserFolder Reading http://www.python.org/pypi/Products.LDAPUserFolder/ Reading http://www.dataflake.org/software/ldapuserfolder Reading http://www.python.org/pypi/Products.LDAPUserFolder/2.9 Best match: Products.LDAPUserFolder 2.9 Downloading http://pypi.python.org/packages/source/P/Products.LDAPUserFolder/Products.LDAPUserFolder-2.9.tar.gz#md5=f17739e6f44dedd6238f3419f7a78cb7 Processing Products.LDAPUserFolder-2.9.tar.gz Running Products.LDAPUserFolder-2.9/setup.py -q bdist_egg --dist-dir /tmp/easy_install-g3SYBx/Products.LDAPUserFolder-2.9/egg-dist-tmp-2YMV99 File "build/bdist.linux-i686/egg/Products/LDAPUserFolder/skins/cmfldap/members_add_control.py", line 32 return context.setStatus(False, errmsg) SyntaxError: 'return' outside function File "build/bdist.linux-i686/egg/Products/LDAPUserFolder/skins/cmfldap/join_form.py", line 26 return SyntaxError: 'return' outside function File "/usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg/Products/LDAPUserFolder/skins/cmfldap/members_add_control.py", line 32 return context.setStatus(False, errmsg) SyntaxError: 'return' outside function File "/usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg/Products/LDAPUserFolder/skins/cmfldap/join_form.py", line 26 return SyntaxError: 'return' outside function Adding Products.LDAPUserFolder 2.9 to easy-install.pth file Installed /usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg Processing dependencies for Products.LDAPUserFolder plone:~# =========================================================== Como veo que no se instala correctamente, lo he borrado manualmente el directorio que se ha creado (/usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg) y he probado a instarlo manualmente: =========================================================== wget http://www.dataflake.org/software/ldapuserfolder/ldapuserfolder_2.9-beta/LDAPUserFolder-2.9-beta.tgz/download --output-document LDAPUserFolder-2.9-beta.tgz tar zxvf LDAPUserFolder-2.9-beta.tgz -C /usr/local/share/zope/Products chown -R root:zope /usr/local/share/zope/Products dzhandle add-product plone-site LDAPUserFolder /etc/init.d/zope2.10 restart =========================================================== Una vez hecho esto, cuando accedo a la gestión de productos desde Plone (no desde el ZMI), me sale el producto como instalable, le doy a instalar, y me sake esta página de error: =========================================================== Site Error An error was encountered while publishing this resource. ValueError Sorry, a site error occurred. Traceback (innermost last): * Module ZPublisher.Publish, line 202, in publish_module_standard * Module ZPublisher.Publish, line 150, in publish * Module plone.app.linkintegrity.monkey, line 21, in zpublisher_exception_hook_wrapper * Module Zope2.App.startup, line 221, in zpublisher_exception_hook * Module ZPublisher.Publish, line 119, in publish * Module ZPublisher.mapply, line 88, in mapply * Module ZPublisher.Publish, line 42, in call_object * Module Shared.DC.Scripts.Bindings, line 313, in __call__ * Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec * Module Products.CMFCore.FSPageTemplate, line 216, in _exec * Module Products.CMFCore.FSPageTemplate, line 155, in pt_render * Module Products.PageTemplates.PageTemplate, line 89, in pt_render * Module zope.pagetemplate.pagetemplate, line 117, in pt_render * Module zope.tal.talinterpreter, line 271, in __call__ * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 891, in do_useMacro * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 536, in do_optTag_tal * Module zope.tal.talinterpreter, line 521, in do_optTag * Module zope.tal.talinterpreter, line 516, in no_tag * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 891, in do_useMacro * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 536, in do_optTag_tal * Module zope.tal.talinterpreter, line 521, in do_optTag * Module zope.tal.talinterpreter, line 516, in no_tag * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 534, in do_optTag_tal * Module zope.tal.talinterpreter, line 516, in no_tag * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 745, in do_insertStructure_tal * Module Products.PageTemplates.Expressions, line 221, in evaluateStructure * Module zope.tales.tales, line 696, in evaluate URL: file:/var/lib/zope2.10/instance/plone-site/Products/CMFPlone/skins/plone_templates/main_template.pt Line 30, Column 4 Expression: Names: {'container': , 'context': , 'default': , 'here': , 'loop': {}, 'nothing': None, 'options': {'args': ()}, 'repeat': , 'request': , 'root': , 'template': , 'traverse_subpath': [], 'user': } * Module Products.Five.browser.providerexpression, line 37, in __call__ * Module plone.app.viewletmanager.manager, line 80, in render * Module zope.app.pagetemplate.simpleviewclass, line 44, in __call__ * Module Shared.DC.Scripts.Bindings, line 313, in __call__ * Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec * Module Products.PageTemplates.PageTemplateFile, line 129, in _exec * Module Products.PageTemplates.PageTemplate, line 89, in pt_render * Module zope.pagetemplate.pagetemplate, line 117, in pt_render * Module zope.tal.talinterpreter, line 271, in __call__ * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 536, in do_optTag_tal * Module zope.tal.talinterpreter, line 521, in do_optTag * Module zope.tal.talinterpreter, line 516, in no_tag * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 534, in do_optTag_tal * Module zope.tal.talinterpreter, line 516, in no_tag * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 745, in do_insertStructure_tal * Module Products.PageTemplates.Expressions, line 221, in evaluateStructure * Module zope.tales.tales, line 696, in evaluate URL: index Line 2, Column 2 Expression: Names: {'container': , 'context': , 'default': , 'here': , 'loop': {}, 'nothing': None, 'options': {'args': ()}, 'repeat': , 'request': , 'root': , 'template': , 'traverse_subpath': [], 'user': , 'view': , 'views': } * Module Products.Five.browser.providerexpression, line 37, in __call__ * Module zope.viewlet.manager, line 110, in render * Module Shared.DC.Scripts.Bindings, line 313, in __call__ * Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec * Module Products.PageTemplates.PageTemplateFile, line 129, in _exec * Module Products.PageTemplates.PageTemplate, line 89, in pt_render * Module zope.pagetemplate.pagetemplate, line 117, in pt_render * Module zope.tal.talinterpreter, line 271, in __call__ * Module zope.tal.talinterpreter, line 346, in interpret * Module zope.tal.talinterpreter, line 822, in do_loop_tal * Module zope.tales.tales, line 682, in setRepeat * Module zope.tales.tales, line 696, in evaluate URL: template Line 1, Column 0 Expression: Names: {'container': , 'context': , 'default': , 'here': , 'loop': {}, 'nothing': None, 'options': {'args': (), 'viewlets': []}, 'repeat': , 'request': , 'root': , 'template': , 'traverse_subpath': [], 'user': , 'view': object at 0xb22560ac>, 'views': } * Module zope.tales.expressions, line 217, in __call__ * Module Products.PageTemplates.Expressions, line 161, in _eval * Module Products.PageTemplates.Expressions, line 123, in render * Module Products.ResourceRegistries.browser.scripts, line 20, in scripts * Module Products.ResourceRegistries.tools.BaseRegistry, line 778, in getEvaluatedResources * Module Products.ResourceRegistries.tools.BaseRegistry, line 463, in evaluateExpression __traceback_info__: (, , , "python:portal.kupu_library_tool.isKupuEnabled(REQUEST=request) or not here.restrictedTraverse('@@plone_portal_state').anonymous()") * Module Products.CMFCore.Expression, line 48, in __call__ * Module Products.PageTemplates.ZRPythonExpr, line 49, in __call__ __traceback_info__: portal.kupu_library_tool.isKupuEnabled(REQUEST=request) or not here.restrictedTraverse('@@plone_portal_state').anonymous() * Module PythonExpr, line 1, in * Module Products.kupu.plone.plonelibrarytool, line 321, in isKupuEnabled * Module Products.CMFCore.MemberDataTool, line 341, in getProperty ValueError: The property wysiwyg_editor does not exist (Also, the following error occurred while attempting to render the standard error message, please see the event log for full details: The property wysiwyg_editor does not exist) Troubleshooting Suggestions * The URL may be incorrect. * The parameters passed to this resource may be incorrect. * A resource that this resource relies on may be encountering an error. For more detailed information about the error, please refer to the error log. If the error persists please contact the site maintainer. Thank you for your patience. =========================================================== Tras este error, ya no puedo acceder a ninguna página del sitio, aunque sí al ZMI. ¿Alguien me puede ayudar a saber por qué surje este error? No entiendo muy bien los datos que me da la página. Un saludo y gracias por adelantado. From dukebody en gmail.com Thu Jul 10 17:58:38 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Thu Jul 10 17:58:46 2008 Subject: [Zope-es] Error al instalar LDAPUserFolder In-Reply-To: <52a9d2e30807100842s5a23c167id13e7ff9fae7d7bf@mail.gmail.com> References: <52a9d2e30807100842s5a23c167id13e7ff9fae7d7bf@mail.gmail.com> Message-ID: <5e92377e0807100858o2a4b5f66je53c060be89ea42b@mail.gmail.com> Los huevos del tipo Products.* no se instalan en el sistema mediante easy_install, sino que tienes varias opciones: Si usas buildout: Poner la URL http://plone.org/products/ploneldap/releases/1.0/PloneLDAP-1.0rc3.tar.gz en la sección nested-packages de [productdistros] de buildout.cfg o bien Poner los tres huevos correspondientes en la sección eggs de [buildout]. Si no usas buildout: Descargar http://plone.org/products/ploneldap/releases/1.0/PloneLDAP-1.0rc3.tar.gz y poner sus tres directorios contenidos en el directorio products de tu instancia de Plone. Por otra parte, el libro de M. Aspeli dice que instales el huevo simplon.plone.ldap, lo que puedes hacer referenciándolo en las secciones eggs y zcml de tu buildout.cfg o cargarlo desde otro paquete. Espero que esto te ayude. :-) On Thu, Jul 10, 2008 at 5:42 PM, Juan Asensio Sánchez wrote: > Hola > > He pusto este mismo mensaje en las listas de Plone, pero no he > obtenido respuesta; a ver si me podéis ayudar. Estoy empezando con > Plone. He instalado Plone3 desde los repositorios backports de Debian > en una Debian Etch. La instalación básica funciona correctamente. > Ahora quiero instalarle el soporte para LDAP para que los usuarios se > autentifiquen contra un servidor OpenLDAP o Active Directory. Estoy > usando esta guía: > > http://plone.org/products/ploneldap > > Cuando intento instalar el producto con easy_install me salta este > error (antes de esto he instalado python-ldap, logicamente): > > =========================================================== > > plone:~# easy_install Products.LDAPUserFolder > Searching for Products.LDAPUserFolder > Reading http://www.python.org/pypi/Products.LDAPUserFolder/ > Reading http://www.dataflake.org/software/ldapuserfolder > Reading http://www.python.org/pypi/Products.LDAPUserFolder/2.9 > Best match: Products.LDAPUserFolder 2.9 > Downloading > http://pypi.python.org/packages/source/P/Products.LDAPUserFolder/Products.LDAPUserFolder-2.9.tar.gz#md5=f17739e6f44dedd6238f3419f7a78cb7 > Processing Products.LDAPUserFolder-2.9.tar.gz > Running Products.LDAPUserFolder-2.9/setup.py -q bdist_egg --dist-dir > /tmp/easy_install-g3SYBx/Products.LDAPUserFolder-2.9/egg-dist-tmp-2YMV99 > File > "build/bdist.linux-i686/egg/Products/LDAPUserFolder/skins/cmfldap/members_add_control.py", > line 32 > return context.setStatus(False, errmsg) > SyntaxError: 'return' outside function > File > "build/bdist.linux-i686/egg/Products/LDAPUserFolder/skins/cmfldap/join_form.py", > line 26 > return > SyntaxError: 'return' outside function > File > "/usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg/Products/LDAPUserFolder/skins/cmfldap/members_add_control.py", > line 32 > return context.setStatus(False, errmsg) > SyntaxError: 'return' outside function > File > "/usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg/Products/LDAPUserFolder/skins/cmfldap/join_form.py", > line 26 > return > SyntaxError: 'return' outside function > Adding Products.LDAPUserFolder 2.9 to easy-install.pth file > > Installed > /usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg > Processing dependencies for Products.LDAPUserFolder > plone:~# > > =========================================================== > > Como veo que no se instala correctamente, lo he borrado manualmente el > directorio que se ha creado > (/usr/lib/python2.4/site-packages/Products.LDAPUserFolder-2.9-py2.4.egg) > y he probado a instarlo manualmente: > > =========================================================== > > wget > http://www.dataflake.org/software/ldapuserfolder/ldapuserfolder_2.9-beta/LDAPUserFolder-2.9-beta.tgz/download > --output-document LDAPUserFolder-2.9-beta.tgz > tar zxvf LDAPUserFolder-2.9-beta.tgz -C /usr/local/share/zope/Products > chown -R root:zope /usr/local/share/zope/Products > dzhandle add-product plone-site LDAPUserFolder > /etc/init.d/zope2.10 restart > =========================================================== > > Una vez hecho esto, cuando accedo a la gestión de productos desde > Plone (no desde el ZMI), me sale el producto como instalable, le doy a > instalar, y me sake esta página de error: > > =========================================================== > > Site Error > > An error was encountered while publishing this resource. > > ValueError > Sorry, a site error occurred. > > Traceback (innermost last): > > * Module ZPublisher.Publish, line 202, in publish_module_standard > * Module ZPublisher.Publish, line 150, in publish > * Module plone.app.linkintegrity.monkey, line 21, in > zpublisher_exception_hook_wrapper > * Module Zope2.App.startup, line 221, in zpublisher_exception_hook > * Module ZPublisher.Publish, line 119, in publish > * Module ZPublisher.mapply, line 88, in mapply > * Module ZPublisher.Publish, line 42, in call_object > * Module Shared.DC.Scripts.Bindings, line 313, in __call__ > * Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec > * Module Products.CMFCore.FSPageTemplate, line 216, in _exec > * Module Products.CMFCore.FSPageTemplate, line 155, in pt_render > * Module Products.PageTemplates.PageTemplate, line 89, in pt_render > * Module zope.pagetemplate.pagetemplate, line 117, in pt_render > * Module zope.tal.talinterpreter, line 271, in __call__ > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 891, in do_useMacro > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 536, in do_optTag_tal > * Module zope.tal.talinterpreter, line 521, in do_optTag > * Module zope.tal.talinterpreter, line 516, in no_tag > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 891, in do_useMacro > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 536, in do_optTag_tal > * Module zope.tal.talinterpreter, line 521, in do_optTag > * Module zope.tal.talinterpreter, line 516, in no_tag > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 534, in do_optTag_tal > * Module zope.tal.talinterpreter, line 516, in no_tag > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 745, in do_insertStructure_tal > * Module Products.PageTemplates.Expressions, line 221, in > evaluateStructure > * Module zope.tales.tales, line 696, in evaluate > URL: > file:/var/lib/zope2.10/instance/plone-site/Products/CMFPlone/skins/plone_templates/main_template.pt > Line 30, Column 4 > Expression: > Names: > > {'container': , > 'context': , > 'default': , > 'here': , > 'loop': {}, > 'nothing': None, > 'options': {'args': ()}, > 'repeat': 0xb2572e0c>, > 'request': URL=http://www.pruebas.com/prefs_install_products_form>, > 'root': , > 'template': , > 'traverse_subpath': [], > 'user': } > > * Module Products.Five.browser.providerexpression, line 37, in __call__ > * Module plone.app.viewletmanager.manager, line 80, in render > * Module zope.app.pagetemplate.simpleviewclass, line 44, in __call__ > * Module Shared.DC.Scripts.Bindings, line 313, in __call__ > * Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec > * Module Products.PageTemplates.PageTemplateFile, line 129, in _exec > * Module Products.PageTemplates.PageTemplate, line 89, in pt_render > * Module zope.pagetemplate.pagetemplate, line 117, in pt_render > * Module zope.tal.talinterpreter, line 271, in __call__ > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 536, in do_optTag_tal > * Module zope.tal.talinterpreter, line 521, in do_optTag > * Module zope.tal.talinterpreter, line 516, in no_tag > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 534, in do_optTag_tal > * Module zope.tal.talinterpreter, line 516, in no_tag > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 745, in do_insertStructure_tal > * Module Products.PageTemplates.Expressions, line 221, in > evaluateStructure > * Module zope.tales.tales, line 696, in evaluate > URL: index > Line 2, Column 2 > Expression: > Names: > > {'container': , > 'context': , > 'default': , > 'here': , > 'loop': {}, > 'nothing': None, > 'options': {'args': ()}, > 'repeat': 0xb22d4f8c>, > 'request': URL=http://www.pruebas.com/prefs_install_products_form>, > 'root': , > 'template': , > 'traverse_subpath': [], > 'user': , > 'view': /var/lib/zope2.10/instance/plone-site/Products/ResourceRegistries/browser/resourceregistries.pt > object at 0xb22d4c8c>, > 'views': object at 0xb22d4f2c>} > > * Module Products.Five.browser.providerexpression, line 37, in __call__ > * Module zope.viewlet.manager, line 110, in render > * Module Shared.DC.Scripts.Bindings, line 313, in __call__ > * Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec > * Module Products.PageTemplates.PageTemplateFile, line 129, in _exec > * Module Products.PageTemplates.PageTemplate, line 89, in pt_render > * Module zope.pagetemplate.pagetemplate, line 117, in pt_render > * Module zope.tal.talinterpreter, line 271, in __call__ > * Module zope.tal.talinterpreter, line 346, in interpret > * Module zope.tal.talinterpreter, line 822, in do_loop_tal > * Module zope.tales.tales, line 682, in setRepeat > * Module zope.tales.tales, line 696, in evaluate > URL: template > Line 1, Column 0 > Expression: > Names: > > {'container': , > 'context': , > 'default': , > 'here': , > 'loop': {}, > 'nothing': None, > 'options': {'args': (), 'viewlets': []}, > 'repeat': 0xb225618c>, > 'request': URL=http://www.pruebas.com/prefs_install_products_form>, > 'root': , > 'template': , > 'traverse_subpath': [], > 'user': , > 'view': IHtmlHeadScripts> object at 0xb22560ac>, > 'views': object at 0xb225612c>} > > * Module zope.tales.expressions, line 217, in __call__ > * Module Products.PageTemplates.Expressions, line 161, in _eval > * Module Products.PageTemplates.Expressions, line 123, in render > * Module Products.ResourceRegistries.browser.scripts, line 20, in > scripts > * Module Products.ResourceRegistries.tools.BaseRegistry, line 778, in > getEvaluatedResources > * Module Products.ResourceRegistries.tools.BaseRegistry, line 463, in > evaluateExpression > __traceback_info__: (, , > , > "python:portal.kupu_library_tool.isKupuEnabled(REQUEST=request) or not > here.restrictedTraverse('@@plone_portal_state').anonymous()") > * Module Products.CMFCore.Expression, line 48, in __call__ > * Module Products.PageTemplates.ZRPythonExpr, line 49, in __call__ > __traceback_info__: > portal.kupu_library_tool.isKupuEnabled(REQUEST=request) or not > here.restrictedTraverse('@@plone_portal_state').anonymous() > * Module PythonExpr, line 1, in > * Module Products.kupu.plone.plonelibrarytool, line 321, in > isKupuEnabled > * Module Products.CMFCore.MemberDataTool, line 341, in getProperty > > ValueError: The property wysiwyg_editor does not exist (Also, the following > error occurred while attempting to render the standard error message, please > see the event log for full details: The property wysiwyg_editor does not > exist) > > Troubleshooting Suggestions > > * The URL may be incorrect. > * The parameters passed to this resource may be incorrect. > * A resource that this resource relies on may be encountering an error. > > For more detailed information about the error, please refer to the error > log. > > If the error persists please contact the site maintainer. Thank you for your > patience. > > =========================================================== > > Tras este error, ya no puedo acceder a ninguna página del sitio, > aunque sí al ZMI. ¿Alguien me puede ayudar a saber por qué surje este > error? No entiendo muy bien los datos que me da la página. > > Un saludo y gracias por adelantado. > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Israel Saeta Pérez http://dukebody.com From dukebody en gmail.com Thu Jul 10 22:03:44 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Thu Jul 10 22:03:52 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> Message-ID: <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> Bueno, al final he encontrado respuesta yo mismo leyendo en el libro de "Web Component Development with Zope 3", aunque no ha sido nada fácil, y la solución no me convence demasiado. En la clase del formulario, se puede elegir el widget que se quiere utilizar en vez del que viene por defecto fijando el valor custom_widget del campo que queremos personalizar. Por ejemplo, from Products.Five.formlib import formbase from zope.app.form.browser.textwidgets import TextWidget class ISearchEvents(interface.Interface): name = schema.TextLine(title=u'Nombre', required=False) class LittleTextWidget(TextWidget): """A Text Widget with fixed width (default was 20) """ displayWidth = 10 class EventsSearchForm(formbase.PageForm): form_fields = form.FormFields(ISearchEvents) form_fields['name'].custom_widget = LittleTextWidget # esta linea es la importante No me gusta esta solución porque tengo que escribir una línea de código para personalizar el widget de cada campo, y si tengo muchos formularios con muchos campos es bastante tedioso y propenso a fallos. Realmente, los widgets aprovechan la arquitectura de componentes de Zope y se definen como vistas de un tipo de campo de un formulario, con declaraciones del tipo por lo que en teoría es posible registrar un widget propio para que se use en vez del que viene por defecto. El problema es que, hasta donde llego, eso me obligaría a sobreescribir todos (con un overrides.zcml) o a tener que definir una interfaz para utilizarla en lugar de zope.schema.interfaces.ITextLine, con su correspondiente implementación, para usarla en mis esquemas cada vez que quiera un widget más corto. Evidentemente, cambiar el tipo de datos para poder personalizar la vista si que es matar moscas a cañonazos. Una solución posible era registrar el widget para una capa (layer) específica de un tema, pero el problema es que estoy utilizando Plone 2.5 y los temas de P 2.5 no tienen definida la famosa interfaz IThemeSpecific. ¿Podría definirla yo mismo y funcionaría la directiva ZCML "layer" con Five 1.4? De todas formas, esto también me obligaría a utilizar el widget personalizado para *todos* los ITextLine, así que no es realmente válida. Supongo que z3c.forms intenta solucionar esta (al menos aparente) rigidez de zope.formlib, pero la biblioteca de adaptación a Plone necesita Plone>=3.0, y ya dije que trabajo con el 2.5 actualmente. ¿Alguna idea sobre cómo personalizar los widgets de un determinado tipo de una serie de formularios sin estos problemas? Perdón por el tostón. 2008/7/10 Israel Saeta Pérez : > Hola, > > Estoy intentando crear un formulario de búsqueda con varios campos con > zope.formlib, todos de tipo texto. > > He definido el esquema del formulario con zope.schema, utilizando para > todos los campos schema.TextLine. Mi problema es que, al pasar este > esquema a formlib mediante form_fields = form.FormFields(ISearch), el > widget HTML que al final representa es un input con size="20" y, por > motivos de diseño, yo lo quiero con un tamaño menor. > > He estado mirando el código de formlib un rato y no he encontrado > ninguna forma sencilla de indicarle el tamaño del widget, o el nombre > de otro widget que quiera utilizar en vez del que viene por defecto. > El código del widget que se utiliza está en > zope.app.form.browser.textWidget, que tiene a fuego (hardcoded) el > valor de displayWidth=20. > > ¿Conoce alguien alguna forma de conseguir lo que busco? Gracias de antemano. -- Israel Saeta Pérez http://dukebody.com From garito en sistes.net Fri Jul 11 03:36:07 2008 From: garito en sistes.net (Garito) Date: Fri Jul 11 03:36:18 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> Message-ID: Te das cuenta de la que tienes que liar para cambiar el size de un puñetero input? Pa flipar, neng! Perdona que me meta para no aportar nada :-p El día 10 de julio de 2008 22:03, Israel Saeta Pérez escribió: > Bueno, al final he encontrado respuesta yo mismo leyendo en el libro > de "Web Component Development with Zope 3", aunque no ha sido nada > fácil, y la solución no me convence demasiado. > > En la clase del formulario, se puede elegir el widget que se quiere > utilizar en vez del que viene por defecto fijando el valor > custom_widget del campo que queremos personalizar. Por ejemplo, > > > from Products.Five.formlib import formbase > from zope.app.form.browser.textwidgets import TextWidget > > class ISearchEvents(interface.Interface): > name = schema.TextLine(title=u'Nombre', > required=False) > > class LittleTextWidget(TextWidget): > """A Text Widget with fixed width (default was 20) > """ > displayWidth = 10 > > class EventsSearchForm(formbase.PageForm): > form_fields = form.FormFields(ISearchEvents) > form_fields['name'].custom_widget = LittleTextWidget # esta linea > es la importante > > > No me gusta esta solución porque tengo que escribir una línea de > código para personalizar el widget de cada campo, y si tengo muchos > formularios con muchos campos es bastante tedioso y propenso a fallos. > > Realmente, los widgets aprovechan la arquitectura de componentes de > Zope y se definen como vistas de un tipo de campo de un formulario, > con declaraciones del tipo > > type="zope.publisher.interfaces.browser.IBrowserRequest" > for="zope.schema.interfaces.ITextLine" > provides="zope.app.form.interfaces.IInputWidget" > factory=".TextWidget" > permission="zope.Public" > /> > > por lo que en teoría es posible registrar un widget propio para que se > use en vez del que viene por defecto. El problema es que, hasta donde > llego, eso me obligaría a sobreescribir todos (con un overrides.zcml) > o a tener que definir una interfaz para utilizarla en lugar de > zope.schema.interfaces.ITextLine, con su correspondiente > implementación, para usarla en mis esquemas cada vez que quiera un > widget más corto. > > Evidentemente, cambiar el tipo de datos para poder personalizar la > vista si que es matar moscas a cañonazos. > > Una solución posible era registrar el widget para una capa (layer) > específica de un tema, pero el problema es que estoy utilizando Plone > 2.5 y los temas de P 2.5 no tienen definida la famosa interfaz > IThemeSpecific. ¿Podría definirla yo mismo y funcionaría la directiva > ZCML "layer" con Five 1.4? De todas formas, esto también me obligaría > a utilizar el widget personalizado para *todos* los ITextLine, así que > no es realmente válida. > > Supongo que z3c.forms intenta solucionar esta (al menos aparente) > rigidez de zope.formlib, pero la biblioteca de adaptación a Plone > necesita Plone>=3.0, y ya dije que trabajo con el 2.5 actualmente. > > ¿Alguna idea sobre cómo personalizar los widgets de un determinado > tipo de una serie de formularios sin estos problemas? Perdón por el > tostón. > > > 2008/7/10 Israel Saeta Pérez : > > Hola, > > > > Estoy intentando crear un formulario de búsqueda con varios campos con > > zope.formlib, todos de tipo texto. > > > > He definido el esquema del formulario con zope.schema, utilizando para > > todos los campos schema.TextLine. Mi problema es que, al pasar este > > esquema a formlib mediante form_fields = form.FormFields(ISearch), el > > widget HTML que al final representa es un input con size="20" y, por > > motivos de diseño, yo lo quiero con un tamaño menor. > > > > He estado mirando el código de formlib un rato y no he encontrado > > ninguna forma sencilla de indicarle el tamaño del widget, o el nombre > > de otro widget que quiera utilizar en vez del que viene por defecto. > > El código del widget que se utiliza está en > > zope.app.form.browser.textWidget, que tiene a fuego (hardcoded) el > > valor de displayWidth=20. > > > > ¿Conoce alguien alguna forma de conseguir lo que busco? Gracias de > antemano. > > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/1bdba85f/attachment.htm From llonchj en atcubic.com Fri Jul 11 03:54:27 2008 From: llonchj en atcubic.com (Jordi Llonch) Date: Fri Jul 11 04:13:35 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> Message-ID: Cuanta razón, Garito. $ python -c "import this" "Less is More" (Mies Van Der Rohe) El 11/07/2008, a las 3:36, Garito escribió: > Te das cuenta de la que tienes que liar para cambiar el size de un > puñetero input? > Pa flipar, neng! Perdona que me meta para no aportar nada :-p > > El día 10 de julio de 2008 22:03, Israel Saeta Pérez > escribió: > Bueno, al final he encontrado respuesta yo mismo leyendo en el libro > de "Web Component Development with Zope 3", aunque no ha sido nada > fácil, y la solución no me convence demasiado. > > En la clase del formulario, se puede elegir el widget que se quiere > utilizar en vez del que viene por defecto fijando el valor > custom_widget del campo que queremos personalizar. Por ejemplo, > > > from Products.Five.formlib import formbase > from zope.app.form.browser.textwidgets import TextWidget > > class ISearchEvents(interface.Interface): > name = schema.TextLine(title=u'Nombre', > required=False) > > class LittleTextWidget(TextWidget): > """A Text Widget with fixed width (default was 20) > """ > displayWidth = 10 > > class EventsSearchForm(formbase.PageForm): > form_fields = form.FormFields(ISearchEvents) > form_fields['name'].custom_widget = LittleTextWidget # esta linea > es la importante > > > No me gusta esta solución porque tengo que escribir una línea de > código para personalizar el widget de cada campo, y si tengo muchos > formularios con muchos campos es bastante tedioso y propenso a fallos. > > Realmente, los widgets aprovechan la arquitectura de componentes de > Zope y se definen como vistas de un tipo de campo de un formulario, > con declaraciones del tipo > > type="zope.publisher.interfaces.browser.IBrowserRequest" > for="zope.schema.interfaces.ITextLine" > provides="zope.app.form.interfaces.IInputWidget" > factory=".TextWidget" > permission="zope.Public" > /> > > por lo que en teoría es posible registrar un widget propio para que se > use en vez del que viene por defecto. El problema es que, hasta donde > llego, eso me obligaría a sobreescribir todos (con un overrides.zcml) > o a tener que definir una interfaz para utilizarla en lugar de > zope.schema.interfaces.ITextLine, con su correspondiente > implementación, para usarla en mis esquemas cada vez que quiera un > widget más corto. > > Evidentemente, cambiar el tipo de datos para poder personalizar la > vista si que es matar moscas a cañonazos. > > Una solución posible era registrar el widget para una capa (layer) > específica de un tema, pero el problema es que estoy utilizando Plone > 2.5 y los temas de P 2.5 no tienen definida la famosa interfaz > IThemeSpecific. ¿Podría definirla yo mismo y funcionaría la directiva > ZCML "layer" con Five 1.4? De todas formas, esto también me obligaría > a utilizar el widget personalizado para *todos* los ITextLine, así que > no es realmente válida. > > Supongo que z3c.forms intenta solucionar esta (al menos aparente) > rigidez de zope.formlib, pero la biblioteca de adaptación a Plone > necesita Plone>=3.0, y ya dije que trabajo con el 2.5 actualmente. > > ¿Alguna idea sobre cómo personalizar los widgets de un determinado > tipo de una serie de formularios sin estos problemas? Perdón por el > tostón. > > > 2008/7/10 Israel Saeta Pérez : > > Hola, > > > > Estoy intentando crear un formulario de búsqueda con varios campos > con > > zope.formlib, todos de tipo texto. > > > > He definido el esquema del formulario con zope.schema, utilizando > para > > todos los campos schema.TextLine. Mi problema es que, al pasar este > > esquema a formlib mediante form_fields = form.FormFields(ISearch), > el > > widget HTML que al final representa es un input con size="20" y, por > > motivos de diseño, yo lo quiero con un tamaño menor. > > > > He estado mirando el código de formlib un rato y no he encontrado > > ninguna forma sencilla de indicarle el tamaño del widget, o el > nombre > > de otro widget que quiera utilizar en vez del que viene por defecto. > > El código del widget que se utiliza está en > > zope.app.form.browser.textWidget, que tiene a fuego (hardcoded) el > > valor de displayWidth=20. > > > > ¿Conoce alguien alguna forma de conseguir lo que busco? Gracias de > antemano. > > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > > > > -- > Mis Cosas > http://blogs.sistes.net/Garito > Zope Smart Manager > http://blogs.sistes.net/Garito/670 > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/229b2157/attachment.html From mlarreategi en codesyntax.com Fri Jul 11 08:04:59 2008 From: mlarreategi en codesyntax.com (Mikel Larreategi) Date: Fri Jul 11 08:05:10 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> Message-ID: <4876F80B.2050308@codesyntax.com> Israel Saeta Pérez(e)k dio: > Bueno, al final he encontrado respuesta yo mismo leyendo en el libro > de "Web Component Development with Zope 3", aunque no ha sido nada > fácil, y la solución no me convence demasiado. > > En la clase del formulario, se puede elegir el widget que se quiere > utilizar en vez del que viene por defecto fijando el valor > custom_widget del campo que queremos personalizar. Por ejemplo, > > > from Products.Five.formlib import formbase > from zope.app.form.browser.textwidgets import TextWidget > > class ISearchEvents(interface.Interface): > name = schema.TextLine(title=u'Nombre', > required=False) > > class LittleTextWidget(TextWidget): > """A Text Widget with fixed width (default was 20) > """ > displayWidth = 10 > No te hace falta definir un Widget para eso. Hay un método que se ejecuta al renderizar el formulario para preparar los campos y los widgets, y puedes definir el tamaño en ese método:: class SuggestionEditForm(EditFormBase): form_fields = form.FormFields(ISuggestion) def setUpWidgets(self, ignore_request=False): super(SuggestionEditForm, self).setUpWidgets(ignore_request=ignore_request) # We want bigger textlines for widget in self.widgets: if widget.type == u'text': widget.displayWidth = 40 Saludos, Mikel -- Mikel Larreategi mlarreategi@codesyntax.com CodeSyntax Azitaingo Industrialdea 3 K E-20600 Eibar Tel: (+34) 943 82 17 80 From garito en sistes.net Fri Jul 11 16:42:33 2008 From: garito en sistes.net (Garito) Date: Fri Jul 11 16:42:42 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <4876F80B.2050308@codesyntax.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> <4876F80B.2050308@codesyntax.com> Message-ID: Que curioso que solo una persona mas (ademas de mi) se haya dado cuenta de lo que llevo dias diciendo (y encima, como no podria ser de otra manera, tenia que ser Jordi! - que tal los Marruecos?) Esto me lleva a pensar que mi trabajo no debe enfocarse en los que programan pues estan tan acostumbrados a lo complicado que tienden a complicarse la vida Esto me lleva a recordar que a mi me ha costado sangre, sudor y lagrimas poder educarme para dejar de ser complicado (almenos en lo que a programacion se refiere) Y es que lo simple es lo que convierte a esta profesion en arte y, claro, como en todos los campos, artistas pocos, interpretes muchisimos Suerte que cada vez se valora menos al interprete y mas al artista! (o lo que es lo mismo: es el artista el que le acaba solventando los problemas de verdad al interprete) Saludos! El día 11 de julio de 2008 8:04, Mikel Larreategi < mlarreategi@codesyntax.com> escribió: > Israel Saeta Pérez(e)k dio: > >> Bueno, al final he encontrado respuesta yo mismo leyendo en el libro >> de "Web Component Development with Zope 3", aunque no ha sido nada >> fácil, y la solución no me convence demasiado. >> >> En la clase del formulario, se puede elegir el widget que se quiere >> utilizar en vez del que viene por defecto fijando el valor >> custom_widget del campo que queremos personalizar. Por ejemplo, >> >> >> from Products.Five.formlib import formbase >> from zope.app.form.browser.textwidgets import TextWidget >> >> class ISearchEvents(interface.Interface): >> name = schema.TextLine(title=u'Nombre', >> required=False) >> >> class LittleTextWidget(TextWidget): >> """A Text Widget with fixed width (default was 20) >> """ >> displayWidth = 10 >> >> > > No te hace falta definir un Widget para eso. Hay un método que se ejecuta > al renderizar el formulario para preparar los campos y los widgets, y puedes > definir el tamaño en ese método:: > > class SuggestionEditForm(EditFormBase): > form_fields = form.FormFields(ISuggestion) > > def setUpWidgets(self, ignore_request=False): > super(SuggestionEditForm, > self).setUpWidgets(ignore_request=ignore_request) > > # We want bigger textlines > for widget in self.widgets: > if widget.type == u'text': > widget.displayWidth = 40 > > > Saludos, > > > Mikel > > > > -- > Mikel Larreategi > mlarreategi@codesyntax.com > > CodeSyntax > Azitaingo Industrialdea 3 K > E-20600 Eibar > Tel: (+34) 943 82 17 80 > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/95356742/attachment.htm From dukebody en gmail.com Fri Jul 11 16:55:12 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Fri Jul 11 16:55:22 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <4876F80B.2050308@codesyntax.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> <4876F80B.2050308@codesyntax.com> Message-ID: <5e92377e0807110755j72f24109l1a45ad6e5ec9577@mail.gmail.com> ¡Muchísimas gracias Mikel! Al final no había que liarse tanto, sólo que yo no sabía como hacer las cosas bien. 2008/7/11 Mikel Larreategi : > Israel Saeta Pérez(e)k dio: >> >> Bueno, al final he encontrado respuesta yo mismo leyendo en el libro >> de "Web Component Development with Zope 3", aunque no ha sido nada >> fácil, y la solución no me convence demasiado. >> >> En la clase del formulario, se puede elegir el widget que se quiere >> utilizar en vez del que viene por defecto fijando el valor >> custom_widget del campo que queremos personalizar. Por ejemplo, >> >> >> from Products.Five.formlib import formbase >> from zope.app.form.browser.textwidgets import TextWidget >> >> class ISearchEvents(interface.Interface): >> name = schema.TextLine(title=u'Nombre', >> required=False) >> >> class LittleTextWidget(TextWidget): >> """A Text Widget with fixed width (default was 20) >> """ >> displayWidth = 10 >> > > > No te hace falta definir un Widget para eso. Hay un método que se ejecuta al > renderizar el formulario para preparar los campos y los widgets, y puedes > definir el tamaño en ese método:: > > class SuggestionEditForm(EditFormBase): > form_fields = form.FormFields(ISuggestion) > > def setUpWidgets(self, ignore_request=False): > super(SuggestionEditForm, > self).setUpWidgets(ignore_request=ignore_request) > > # We want bigger textlines > for widget in self.widgets: > if widget.type == u'text': > widget.displayWidth = 40 > > > Saludos, > > > Mikel > > > > -- > Mikel Larreategi > mlarreategi@codesyntax.com > > CodeSyntax > Azitaingo Industrialdea 3 K > E-20600 Eibar > Tel: (+34) 943 82 17 80 > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Israel Saeta Pérez http://dukebody.com From garito en sistes.net Fri Jul 11 16:56:53 2008 From: garito en sistes.net (Garito) Date: Fri Jul 11 17:04:11 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <5e92377e0807110755j72f24109l1a45ad6e5ec9577@mail.gmail.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> <4876F80B.2050308@codesyntax.com> <5e92377e0807110755j72f24109l1a45ad6e5ec9577@mail.gmail.com> Message-ID: jajajajajajajajajaj, que cachondo: no habia que liarse tanto, jajajajajajajajajaja Esto es mejor que el humor ingles de aqui a Lima, jajajajajajajajaj! El día 11 de julio de 2008 16:55, Israel Saeta Pérez escribió: > ¡Muchísimas gracias Mikel! > > Al final no había que liarse tanto, sólo que yo no sabía como hacer > las cosas bien. > > > 2008/7/11 Mikel Larreategi : > > Israel Saeta Pérez(e)k dio: > >> > >> Bueno, al final he encontrado respuesta yo mismo leyendo en el libro > >> de "Web Component Development with Zope 3", aunque no ha sido nada > >> fácil, y la solución no me convence demasiado. > >> > >> En la clase del formulario, se puede elegir el widget que se quiere > >> utilizar en vez del que viene por defecto fijando el valor > >> custom_widget del campo que queremos personalizar. Por ejemplo, > >> > >> > >> from Products.Five.formlib import formbase > >> from zope.app.form.browser.textwidgets import TextWidget > >> > >> class ISearchEvents(interface.Interface): > >> name = schema.TextLine(title=u'Nombre', > >> required=False) > >> > >> class LittleTextWidget(TextWidget): > >> """A Text Widget with fixed width (default was 20) > >> """ > >> displayWidth = 10 > >> > > > > > > No te hace falta definir un Widget para eso. Hay un método que se ejecuta > al > > renderizar el formulario para preparar los campos y los widgets, y puedes > > definir el tamaño en ese método:: > > > > class SuggestionEditForm(EditFormBase): > > form_fields = form.FormFields(ISuggestion) > > > > def setUpWidgets(self, ignore_request=False): > > super(SuggestionEditForm, > > self).setUpWidgets(ignore_request=ignore_request) > > > > # We want bigger textlines > > for widget in self.widgets: > > if widget.type == u'text': > > widget.displayWidth = 40 > > > > > > Saludos, > > > > > > Mikel > > > > > > > > -- > > Mikel Larreategi > > mlarreategi@codesyntax.com > > > > CodeSyntax > > Azitaingo Industrialdea 3 K > > E-20600 Eibar > > Tel: (+34) 943 82 17 80 > > _______________________________________________ > > Zope-es mailing list > > Zope-es@aditel.org > > http://listas.aditel.org/listinfo/zope-es > > > > > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/ef2c821c/attachment.html From llonchj en atcubic.com Fri Jul 11 17:41:12 2008 From: llonchj en atcubic.com (Jordi Llonch) Date: Fri Jul 11 17:43:45 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> <4876F80B.2050308@codesyntax.com> Message-ID: <3764AA63-2391-4C17-8485-99C45EC0B8F1@atcubic.com> En Marruecos bien, estoy a 40º ahora derritiendo teclas... Mi objetivo es más banal... cuando programo persigo los resultados. Sigo sin asimilar las enoOOormes ventajas de Zope3. ¿Alguien las puede explicar en castellano paladín? Saludos, El 11/07/2008, a las 16:42, Garito escribió: > Que curioso que solo una persona mas (ademas de mi) se haya dado > cuenta de lo que llevo dias diciendo (y encima, como no podria ser > de otra manera, tenia que ser Jordi! - que tal los Marruecos?) > > Esto me lleva a pensar que mi trabajo no debe enfocarse en los que > programan pues estan tan acostumbrados a lo complicado que tienden a > complicarse la vida > > Esto me lleva a recordar que a mi me ha costado sangre, sudor y > lagrimas poder educarme para dejar de ser complicado (almenos en lo > que a programacion se refiere) > > Y es que lo simple es lo que convierte a esta profesion en arte y, > claro, como en todos los campos, artistas pocos, interpretes > muchisimos > > Suerte que cada vez se valora menos al interprete y mas al artista! > (o lo que es lo mismo: es el artista el que le acaba solventando los > problemas de verdad al interprete) > > Saludos! > > El día 11 de julio de 2008 8:04, Mikel Larreategi > escribió: > Israel Saeta Pérez(e)k dio: > > Bueno, al final he encontrado respuesta yo mismo leyendo en el libro > de "Web Component Development with Zope 3", aunque no ha sido nada > fácil, y la solución no me convence demasiado. > > En la clase del formulario, se puede elegir el widget que se quiere > utilizar en vez del que viene por defecto fijando el valor > custom_widget del campo que queremos personalizar. Por ejemplo, > > > from Products.Five.formlib import formbase > from zope.app.form.browser.textwidgets import TextWidget > > class ISearchEvents(interface.Interface): > name = schema.TextLine(title=u'Nombre', > required=False) > > class LittleTextWidget(TextWidget): > """A Text Widget with fixed width (default was 20) > """ > displayWidth = 10 > > > > No te hace falta definir un Widget para eso. Hay un método que se > ejecuta al renderizar el formulario para preparar los campos y los > widgets, y puedes definir el tamaño en ese método:: > > class SuggestionEditForm(EditFormBase): > form_fields = form.FormFields(ISuggestion) > > def setUpWidgets(self, ignore_request=False): > super(SuggestionEditForm, > self).setUpWidgets(ignore_request=ignore_request) > > # We want bigger textlines > for widget in self.widgets: > if widget.type == u'text': > widget.displayWidth = 40 > > > Saludos, > > > Mikel > > > > -- > Mikel Larreategi > mlarreategi@codesyntax.com > > CodeSyntax > Azitaingo Industrialdea 3 K > E-20600 Eibar > Tel: (+34) 943 82 17 80 > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > > > > -- > Mis Cosas > http://blogs.sistes.net/Garito > Zope Smart Manager > http://blogs.sistes.net/Garito/670 > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/ef26b1e6/attachment.htm From norma_ruiz_servin en msn.com Fri Jul 11 17:49:59 2008 From: norma_ruiz_servin en msn.com (Norma Angelica Ruiz Servin) Date: Fri Jul 11 17:50:07 2008 Subject: [Zope-es] unsuscribe Message-ID: Unsuscribe _________________________________________________________________ Juega y gana, tenemos 3 Xbox a la semana. http://club.prodigymsn.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/316f02e7/attachment.html From norma_ruiz_servin en msn.com Fri Jul 11 17:53:29 2008 From: norma_ruiz_servin en msn.com (Norma Angelica Ruiz Servin) Date: Fri Jul 11 17:53:38 2008 Subject: [Zope-es] unsuscribe In-Reply-To: References: Message-ID: Unsuscribe _________________________________________________________________ P.D. Checa las nuevas fotos de mi Space http://home.services.spaces.live.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/625e5858/attachment.htm From garito en sistes.net Fri Jul 11 18:12:17 2008 From: garito en sistes.net (Garito) Date: Fri Jul 11 18:12:28 2008 Subject: [Zope-es] Re: Personalizar longitud de un input en zope.formlib In-Reply-To: <3764AA63-2391-4C17-8485-99C45EC0B8F1@atcubic.com> References: <5e92377e0807100703sb70285asf1e8c91135d9ad5@mail.gmail.com> <5e92377e0807101303h7f11ee88ocb82d74d12b8430c@mail.gmail.com> <4876F80B.2050308@codesyntax.com> <3764AA63-2391-4C17-8485-99C45EC0B8F1@atcubic.com> Message-ID: Seguramente no debo pero (que puñetas, dicen que solo se vive una vez) me gustaria presentaros a la persona con quien hice los requerimientos de Yanged (seguramente Yanged es mas suyo que mio) Es el personaje, que conozca en persona, que mas tengo que admirar y respetar y es justo que en un sitio como este se sepa quien es (aunque solo sea en un contexto Yanged) Si pudiese elegir con quien trabajo seria con Jordi Llonch (sin desmerecer, en absoluto, a los que si que tengo la suerte de ayudar en estos tiempos...) Mis respetos y mis saludos desde Terrassa a 30º (encima parece que tenemos suerte de no pasar "tanto" calor) El día 11 de julio de 2008 17:41, Jordi Llonch escribió: > En Marruecos bien, estoy a 40º ahora derritiendo teclas... > > Mi objetivo es más banal... cuando programo persigo los resultados. > > Sigo sin asimilar las enoOOormes ventajas de Zope3. ¿Alguien las puede > explicar en castellano paladín? > > Saludos, > > > El 11/07/2008, a las 16:42, Garito escribió: > > Que curioso que solo una persona mas (ademas de mi) se haya dado cuenta de > lo que llevo dias diciendo (y encima, como no podria ser de otra manera, > tenia que ser Jordi! - que tal los Marruecos?) > > Esto me lleva a pensar que mi trabajo no debe enfocarse en los que > programan pues estan tan acostumbrados a lo complicado que tienden a > complicarse la vida > > Esto me lleva a recordar que a mi me ha costado sangre, sudor y lagrimas > poder educarme para dejar de ser complicado (almenos en lo que a > programacion se refiere) > > Y es que lo simple es lo que convierte a esta profesion en arte y, claro, > como en todos los campos, artistas pocos, interpretes muchisimos > > Suerte que cada vez se valora menos al interprete y mas al artista! (o lo > que es lo mismo: es el artista el que le acaba solventando los problemas de > verdad al interprete) > > Saludos! > > El día 11 de julio de 2008 8:04, Mikel Larreategi < > mlarreategi@codesyntax.com> escribió: > >> Israel Saeta Pérez(e)k dio: >> >>> Bueno, al final he encontrado respuesta yo mismo leyendo en el libro >>> de "Web Component Development with Zope 3", aunque no ha sido nada >>> fácil, y la solución no me convence demasiado. >>> >>> En la clase del formulario, se puede elegir el widget que se quiere >>> utilizar en vez del que viene por defecto fijando el valor >>> custom_widget del campo que queremos personalizar. Por ejemplo, >>> >>> >>> from Products.Five.formlib import formbase >>> from zope.app.form.browser.textwidgets import TextWidget >>> >>> class ISearchEvents(interface.Interface): >>> name = schema.TextLine(title=u'Nombre', >>> required=False) >>> >>> class LittleTextWidget(TextWidget): >>> """A Text Widget with fixed width (default was 20) >>> """ >>> displayWidth = 10 >>> >>> >> >> No te hace falta definir un Widget para eso. Hay un método que se ejecuta >> al renderizar el formulario para preparar los campos y los widgets, y puedes >> definir el tamaño en ese método:: >> >> class SuggestionEditForm(EditFormBase): >> form_fields = form.FormFields(ISuggestion) >> >> def setUpWidgets(self, ignore_request=False): >> super(SuggestionEditForm, >> self).setUpWidgets(ignore_request=ignore_request) >> >> # We want bigger textlines >> for widget in self.widgets: >> if widget.type == u'text': >> widget.displayWidth = 40 >> >> >> Saludos, >> >> >> Mikel >> >> >> >> -- >> Mikel Larreategi >> mlarreategi@codesyntax.com >> >> CodeSyntax >> Azitaingo Industrialdea 3 K >> E-20600 Eibar >> Tel: (+34) 943 82 17 80 >> >> _______________________________________________ >> Zope-es mailing list >> Zope-es@aditel.org >> http://listas.aditel.org/listinfo/zope-es >> > > > > -- > Mis Cosas > http://blogs.sistes.net/Garito > Zope Smart Manager > http://blogs.sistes.net/Garito/670_______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > > > > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es > -- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670 ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: /archivos/zope-es/attachments/20080711/58bf9359/attachment.html From dukebody en gmail.com Fri Jul 11 19:59:26 2008 From: dukebody en gmail.com (=?ISO-8859-1?Q?Israel_Saeta_P=E9rez?=) Date: Fri Jul 11 19:59:32 2008 Subject: [Zope-es] Ventajas de Zope 3 Message-ID: <5e92377e0807111059v35bd493eg5cd7611134f2cc91@mail.gmail.com> Abro otro tema para responder a Jordi Llonch, que dijo: > Sigo sin asimilar las enoOOormes ventajas de Zope3. ¿Alguien las puede explicar en castellano paladín? Como los desarrolladores vieron que Zope 2 era demasiado monolítico y sus partes no se podían utilizar fácilmente desde fuera ni desde dentro, se desarrolló Zope 3, que es un conjunto de componentes que se pueden integrar entre sí gracias a zope.interfaces y zope.component. Esa es la principal ventaja, que todo es mucho más modular. Desde un punto de vista más práctico, se puede decir que se ha buscado que alguien pueda cambiar el comportamiento de parte de un producto compuesto de varios componentes, como puede ser Plone, sin tener que cambiar su código fuente. Al menos es como yo lo veo. -- Israel Saeta Pérez http://dukebody.com From llonchj en atcubic.com Fri Jul 11 20:44:56 2008 From: llonchj en atcubic.com (Jordi Llonch) Date: Fri Jul 11 20:45:07 2008 Subject: [Zope-es] Ventajas de Zope 3 In-Reply-To: <5e92377e0807111059v35bd493eg5cd7611134f2cc91@mail.gmail.com> References: <5e92377e0807111059v35bd493eg5cd7611134f2cc91@mail.gmail.com> Message-ID: <454FD36D-9804-4AE4-B64E-823F9876FFAC@atcubic.com> He intentado comprender Zope3 en varias ocasiones, dedicándole poco tiempo. Hablando desde la perspectiva de un programador de Productos, me da la sensación que han aumentado la curva de aprendizaje y también cuesta mucho más obtener resultados, que con Zope2 son bastante inmediatos. ¿Que pensáis al respecto? A juzgar por tu experiencia, ¿Cuál es tu recomendación para empezar a "amar" Zope3? Saludos, El 11/07/2008, a las 19:59, Israel Saeta Pérez escribió: > Abro otro tema para responder a Jordi Llonch, que dijo: > >> Sigo sin asimilar las enoOOormes ventajas de Zope3. ¿Alguien las >> puede explicar en castellano paladín? > > Como los desarrolladores vieron que Zope 2 era demasiado monolítico y > sus partes no se podían utilizar fácilmente desde fuera ni desde > dentro, se desarrolló Zope 3, que es un conjunto de componentes que se > pueden integrar entre sí gracias a zope.interfaces y zope.component. > Esa es la principal ventaja, que todo es mucho más modular. > > Desde un punto de vista más práctico, se puede decir que se ha buscado > que alguien pueda cambiar el comportamiento de parte de un producto > compuesto de varios componentes, como puede ser Plone, sin tener que > cambiar su código fuente. Al menos es como yo lo veo. > > -- > Israel Saeta Pérez > http://dukebody.com > _______________________________________________ > Zope-es mailing list > Zope-es@aditel.org > http://listas.aditel.org/listinfo/zope-es From santiago.videla en gmail.com Fri Jul 11 20:59:58 2008 From: santiago.videla en gmail.com (Santiago Videla) Date: Fri Jul 11 21:00:08 2008 Subject: [Zope-es] Ventajas de Zope 3 In-Reply-To: <454FD36D-9804-4AE4-B64E-823F9876FFAC@atcubic.com> References: <5e92377e0807111059v35bd493eg5cd7611134f2c