[Plone-conosur] Directorio web avanzado

Israel Saeta Pérez dukebody en gmail.com
Vie Sep 5 15:01:08 UTC 2008


Hola,

2008/9/5 spanish <manuel en utopiaverde.org>:
>
>
> Israel Saeta Pérez wrote:
>>
>>>> 2.- ¿Cuál de las tres opciones es más sencilla de implementar, mantener
>>>> y
>>>> actualizar?
>>
>> A mi gusto, usar Archetypes directamente.
>>
>
> Para un novato como yo, probablemente sea la mejor opción (de todas formas,
> a ver qué nos cuenta Santiago, pero yo creo que a él le pudo resultar
> sencillo empezar con ArchGenXML 2 por tener una buena base informática en
> general y en Python y Zope en particular).

En realidad es al revés. En teoría, ArchGenXML es más para novatos
porque, en vez de tener que pelearte con el código en Python, escribes
un diagrama UML y el código se genera solo.

> Israel Saeta Pérez wrote:
>>
>> Yo vuelvo a plantearos la posibilidad de meter los registros en una
>> base de datos relacional si pensáis meter muchísimos enlaces.
>>
>
> Tienes razón, Israel: se me había olvidado comentar esta sugerencia tuya. La
> verdad es que ya tenemos localizados varios miles de entidades de interés a
> recomendar, aunque comenzaremos con las que tienen sitio web y/o correo
> electrónico (alrededor de mil) y luego seguiremos con el resto.
>
> Corrígeme si me equivoco: me parece entender que tu sugerencia es que las
> fichas base las hagamos con las herramientas de Plone y los comentarios y/o
> valoraciones vayan, por ejemplo, en una base de datos MySQL asociada.
> ¿Correcto? En caso afirmativo, ¿podríamos hacer y poner en marcha primero el
> directorio de fichas con Plone y después crear y asociarle la base de datos
> de comentarios y/o valoraciones? Digamos que lo más importante para nosotros
> es que la gente pueda consultar el directorio de entidades y, más adelante,
> cuando podamos, añadirle la funcionalidad de los comentarios y/o
> valoraciones. ¿Podríamos hacerlo así sin problemas o tiene que hacerse todo
> junto desde el principio?

Te equivocas. :-)  Mi sugerencia era meter las fichas también en una
base de datos relacional. Para saber si te conviene usar esta
solución, piensa en si tienes intención de crear formularios de
búsqueda que incluyan (casi) todos los campos que vas a escribir en
cada ficha. En caso afirmativo, te conviene usar un modelo relacional.
En el caso de que sólo quieras buscar por un par de campos, es mejor
usar Archetypes.

Esto lo digo porque para realizar búsquedas eficientes en la ZODB
necesitarías usar ZCatalogs, y si vas a meter todos los campos en el
ZCatalog mejor lo almacenas todo directamente en la base de datos
relacional. (Esta explicación es para los entendidos de la lista ;-)

> Israel Saeta Pérez wrote:
>>
>> Una opción muy interesante sería utilizar el tipo de contenido
>> "Enlace" de Plone como base y añadirle los campos que queráis con
>> archetypes.schemaextender o extendiendo el propio esquema del
>> arquetipo.
>>
>
> Me parece una idea estupenda. De hecho, nuestra intención inicial fue usar
> las carpetas y enlaces para crear el directorio, pero la desechamos porque
> hay muchísimas entidades de interés que no cuentan con sitio web (por
> ejemplo, cooperativas y asociaciones locales de productores y consumidores
> ecológicos, artesanos, pequeñas tiendas y asociaciones, etc.) y para
> nosotros es muy importante promover el consumo local, porque minimiza los
> impactos ambientales, crea más puestos de trabajo y redistribuye mucho mejor
> la riqueza.
>
> Así que tu sugerencia nos parece genial: la estudiaremos en profundidad y si
> nos sirve para todo, será por la que optemos finalmente (creo que combinada
> con el tipo de flujo de trabajo, el sistema de permisos, la categorización
> y, quizás, algo más, puede satisfacer nuestras necesidades de una manera
> sencilla y asequible para nuestros conocimientos).
>
> Sólo un par de preguntas al respecto:
>
> 1.- ¿Qué diferencia hay entre usar archetypes.schemaextender y extender el
> propio esquema del arquetipo?

archetypes.schemaextender, si no lo entendí mal, sirve para añadir y
quitar campos "al vuelo" de un tipo de contenido ya definido, como
puede ser el tipo Enlace de Plone. Extender el esquema del arquetipo
Enlace implicaría crear *otro* tipo de contenido, que incluiría los
mismos campos del enlace más otros que definas tú.

> 2.- ¿Dónde está el arquetipo de los enlaces?
>
> Imagino que con el manual de arquetipos podré hallar respuestas para el
> resto de dudas que me surgen en estos momentos...

En un entorno buildout, en la carpeta del sistema de archivos (tu
disco duro) parts/plone/ATContentTypes/content/link.py. Si no, la
carpeta ATContentTypes estará en la carpeta Products de tu instancia
Zope.

> [...]
> Además, Plone tiene dos ventajas añadidas para nosotros:
>
> 1.- Con una sola instalación, puedes mantener muchas instancias, sin tener
> que estar actualizando por separado cada uno de los sitios web a las últimas
> versiones liberadas.

Esto no es del todo cierto. Podéis tener instancias de Plone que
compartan los mismos productos en el sistema de archivos, pero la
instancia de Plone de la ZODB de cada sitio la tendréis que actualizar
igualmente → portal_migrations.


-- 
Israel Saeta Pérez
http://dukebody.com


Más información sobre la lista de distribución Plone-ConoSur