>Du coup, je continuais à utiliser le duo PHP/MYSQL pour les >développements web
Personnellement je préfère de loin le couple Postgresql / Python / Mod_Python / Clearsilver ... (évidemment il faut écrire des handlers ce qui est peut-être un peu plus compliqué...)
>Et je tombe sur ZPT. Je pousse un peu plus loin ma lecture et je >comprends que ce langage de template est vraiment intéressant.
Je suis désolé, mais quand je vois des choses comme :
<div metal:fill-slot="main" id="content-news"
tal:define="results python:container.portal_catalog(portal_type='News Item',sort_on='Date',sort_order='reverse',review_state='published');
results python:[r for r in results if r.getObject()];
Batch python:modules['Products.CMFPlone'].Batch;
b_start python:request.get('b_start',0);
portal_discussion nocall:here/portal_discussion;
isDiscussionAllowedFor nocall:portal_discussion/isDiscussionAllowedFor;
getDiscussionFor nocall:portal_discussion/getDiscussionFor;
home_url python: mtool.getHomeUrl;
localized_time python: modules['Products.CMFPlone.PloneUtilities'].localized_time;">
c'est incompréhensible et ça n'a rien a faire dans un template ... (et je n'ai pas pris le pire exemple niveau illisibilité).
Alors peut-être que ça a été amélioré dans Plone 2.1, peut-être que les developpeurs de Plone n'utilise pas ZPT comme il faut, ... ?
>j'avais souvent l'impression de recoder plus ou moins les mêmes >choses
mouais ... pourquoi ne pas te faire une petite API personnelle, bien organisée en classes .. ?
J'avais aussi ce problème au début, mais par après je me suis fait des classes pour l'authentification des utilisateurs, des classes pour les menus, etc
>il m'était (peut être par incompétence) difficile d'organiser >correctement mon projet au niveau de la stucture du code >source...
ça ça vient avec la pratique :) Personnellement j'essaie d'implémenter un espèce de modèle MVC avec mod_python: un handler qui intercèpte les actions, qui dispatche vers un modules (souvent une classe par page), ces modules appellent mes classes de bases, et enfin me génère une structure HDF qui j'affiche avec Clearsilver. Ainsi tout est bien séparé (partie structure et logique), et j'ai des templates propres.
>Maintenant, une question reste à élucider : pourquoi il est aussi >difficile "d'entrer" dans la technologie Zope ? manque de >communication ? mauvaise documentation ? sujet trop abstrait ?
- Améliorer la ZMI serait déjà pas mal
- Réorganiser l'API qui est un vrai bordel
- Faire quelque chose pour améliorer la rapidité (apparement ya des progrès la dessus)
La première impression que j'ai eu avec Zope c'est que "c'est une grosse usine à gaz où il y règne un bordel assez conséquent"
voila ... ceci dit je n'ai _pas_ testé Zope > 2.6 ni Plone 2.1, donc ça c'est peut-être amélioré ça je ne dis pas :)
[^] # Re: Plone ...
Posté par Julien . En réponse à la dépêche Sortie de la version 2.1 du CMS Plone. Évalué à 1.
Personnellement je préfère de loin le couple Postgresql / Python / Mod_Python / Clearsilver ... (évidemment il faut écrire des handlers ce qui est peut-être un peu plus compliqué...)
>Et je tombe sur ZPT. Je pousse un peu plus loin ma lecture et je >comprends que ce langage de template est vraiment intéressant.
Je suis désolé, mais quand je vois des choses comme :
<div metal:fill-slot="main" id="content-news"
tal:define="results python:container.portal_catalog(portal_type='News Item',sort_on='Date',sort_order='reverse',review_state='published');
results python:[r for r in results if r.getObject()];
Batch python:modules['Products.CMFPlone'].Batch;
b_start python:request.get('b_start',0);
portal_discussion nocall:here/portal_discussion;
isDiscussionAllowedFor nocall:portal_discussion/isDiscussionAllowedFor;
getDiscussionFor nocall:portal_discussion/getDiscussionFor;
home_url python: mtool.getHomeUrl;
localized_time python: modules['Products.CMFPlone.PloneUtilities'].localized_time;">
<form name="searchresults" action="" method="post" tal:condition="results"
tal:define="batch python:Batch(results, 15, int(b_start), orphan=1)">
(...)
c'est incompréhensible et ça n'a rien a faire dans un template ... (et je n'ai pas pris le pire exemple niveau illisibilité).
Alors peut-être que ça a été amélioré dans Plone 2.1, peut-être que les developpeurs de Plone n'utilise pas ZPT comme il faut, ... ?
>j'avais souvent l'impression de recoder plus ou moins les mêmes >choses
mouais ... pourquoi ne pas te faire une petite API personnelle, bien organisée en classes .. ?
J'avais aussi ce problème au début, mais par après je me suis fait des classes pour l'authentification des utilisateurs, des classes pour les menus, etc
>il m'était (peut être par incompétence) difficile d'organiser >correctement mon projet au niveau de la stucture du code >source...
ça ça vient avec la pratique :) Personnellement j'essaie d'implémenter un espèce de modèle MVC avec mod_python: un handler qui intercèpte les actions, qui dispatche vers un modules (souvent une classe par page), ces modules appellent mes classes de bases, et enfin me génère une structure HDF qui j'affiche avec Clearsilver. Ainsi tout est bien séparé (partie structure et logique), et j'ai des templates propres.
>Maintenant, une question reste à élucider : pourquoi il est aussi >difficile "d'entrer" dans la technologie Zope ? manque de >communication ? mauvaise documentation ? sujet trop abstrait ?
- Améliorer la ZMI serait déjà pas mal
- Réorganiser l'API qui est un vrai bordel
- Faire quelque chose pour améliorer la rapidité (apparement ya des progrès la dessus)
La première impression que j'ai eu avec Zope c'est que "c'est une grosse usine à gaz où il y règne un bordel assez conséquent"
voila ... ceci dit je n'ai _pas_ testé Zope > 2.6 ni Plone 2.1, donc ça c'est peut-être amélioré ça je ne dis pas :)