CakePHP-Fr.Org

Forum francophone du Framework CakePHP

Vous n'êtes pas identifié.

#1 14-09-2010 16:43:41

MoAX
Fraisier
Lieu: Tours
Date d'inscription: 10-08-2010
Messages: 55

Utiliser CakePHP 1.3.4 ou 1.2.8

Bonjour,

Je finalise en ce moment un petit projet que j'avais pour but de réaliser pendant mon stage. Il tourne sur CakePHP 1.3.3 que j'ai découvert et plutôt pas mal apprécié tout au long de ce développement.

Je me pose la question, maintenant que ça se termine, si j'ai bien fait d'utiliser la "dernière" version de Cake plutôt qu'une version plus mature comme la 1.2.8 car il se trouve que j'ai découvert plusieurs choses pas très cohérentes à l'utilisation de la "dernière" 1.3.3.

Ce qui me revient à l'esprit le plus rapidement :

- Translate, le behavior qui n'est vraiment pas au point du tout au point de vue relationnel. J'ai eux envie de me casser les dents sur le bureau à plusieurs reprise... Sans compté un comportement bizarre que j'ai retenu et qui est pourtant issu du cookbook :

Code: php

  1. <?php
  2. class Post extends AppModel {
  3.   var $name = 'Post';
  4.   var $actsAs = array(
  5.     'Translate' => array(
  6.       'nom' => 'nomTraduction'
  7.     )
  8.   );
  9. }
  10. ?>

Ce code plante, tout simplement, sauf si on le fait à la volé dans le controller.

Le plus embêtant est la limitation qui fait qu'on ne peut pas récupérer les champs traduits d'un modèle relié sans faire une autre requête.

- Au tour de la validation à présent. Toujours dans le cadre de l'internationalisation. Pour les champs item.title.fre et item.title.eng, si on déclare que title => notEmpty, la vérification ne se fait QUE pour la langue par défaut. Donc soit item.title.fre, soit item.title.eng, mais pas les deux.

Puis, lorsqu'on a une validation sur plusieurs règles par champ, impossible d'obtenir les clés des messages des modèles reliés au modèle actuel si on a pas défini ces messages directement dans ces modèles reliés.
On obtient en effet les messages par défaut de Cake plutôt que la clé.
Dans le cas où, comme moi, on a mis les messages dans les vues pour l'internationalisation ou qu'on utilise $form->error(), c'est agaçant...


Ce qui est sûr, et qui ressort de tout ça. C'est que pour un prochain site multilingues, je créerais ma propre implantation, qui aura ses limites aussi mais le moins possible au niveau relationnel et rapatriement des données. (et j'espère bien vous la proposer)
Ensuite, étant donné que je me considère encore comme débutant, il est possible qu'une ou plusieurs bourdes se glissent dans la liste ci-dessus, et que je sois passé à coté de quelque chose qui aurait pu résoudre, par exemple, les problèmes de validations des champs cités.

Enfin j'aimerais savoir ce que vous penser, vous, de l'utilisation de CakePHP 1.3.4 ou  de CakePHP 1.2.8 . Pour moi la branche 1.2 doit être plus mature puisqu'elle atteint maintenant sa version 8. Mais c'est peut être une illusion que je me fais. à vous d'argumenter.

Si vous connaissez également bien Cake, et que vous avez d'autres pitfalls à citer. Je suis preneur de toute bonne parole.

Bonne journée.

Dernière modification par MoAX (14-09-2010 18:46:58)

Hors ligne

 

#2 15-09-2010 16:08:22

MoAX
Fraisier
Lieu: Tours
Date d'inscription: 10-08-2010
Messages: 55

Re: Utiliser CakePHP 1.3.4 ou 1.2.8

Je remets un peu le topic en valeur. J'aimerais vraiment un avis.

Hors ligne

 

#3 15-09-2010 16:30:32

real34
Cooker
Lieu: Toulouse
Date d'inscription: 28-06-2008
Messages: 1810
Site web

Re: Utiliser CakePHP 1.3.4 ou 1.2.8

Bonjour,

Ce sont en effet des problèmes embêtants mais connu du Translate Behavior et de l'internationalisation avec le framework... cela pêche au niveau des modèles. Les callbacks des Behaviors de modèles liés ne sont pas appelés, ceci est valable pour tous les Behaviors (et le TranslateBehavior n'échappe pas à la règle).

Tu as bien fait d'utiliser la branche 1.3.x du framework qui est celle la plus à jour et proposant le plus de fonctionnalités. La 1.3 est une amélioration de la 1.2, et la version mineure n'est pas un critère judicieux à mon sens pour parler de stabilité du code. Renseigne toi un peu plus sur le processus de développement et de branching du framework si tu souhaites plus d'infos wink

Tu peux regarder sur http://cakephp.lighthouseapp.com/dashboard pour une liste de tous les problèmes connus. Si tu prends les plus anciens tu devrais trouver les principaux problèmes qu'il se traine depuis un bon moment (genre celui du TranslateBehavior), mais il y en a assez peu smile

Enfin, si tu souhaites aider à améliorer le fonctionnement du framework je te conseille de créer des tickets avec les problèmes que tu trouves et d'essayer d'implémenter des solutions ...cela serait utile à beaucoup !


Expert CakePHP - Co-gérant du studio web Occitech

Hors ligne

 

#4 15-09-2010 17:16:44

MoAX
Fraisier
Lieu: Tours
Date d'inscription: 10-08-2010
Messages: 55

Re: Utiliser CakePHP 1.3.4 ou 1.2.8

Merci pour ta réponse.

En fin de compte la 1.2.8 ne sera pas moins buggué que sa petite soeur. C'est dommage. ça m'ennuie beaucoup de développer de cette manière car certaines de ces limitations sont gênantes.
Il faudra faire avec de toute façon et Cake ne s'arrête pas à ça.

Merci pour tes conseils, si j'atteins un bon niveau sur Cake, pourquoi pas tenter de réparer un de ses bugs. ça serait toujours bon pour le projet. Bon, d'ici là CakePHP 2 aura révolutionné les frameworks et fait mordre la poussière à Django et RoR tongue

Hors ligne

 

#5 16-09-2010 13:22:57

real34
Cooker
Lieu: Toulouse
Date d'inscription: 28-06-2008
Messages: 1810
Site web

Re: Utiliser CakePHP 1.3.4 ou 1.2.8

big_smile Oui, sans doute !

Tu sais il n'est pas nécessaire de proposer une solution codée, toute propre et qui fonctionne nickel pour créer un ticket sur le bug tracker. La core team est faite de développeurs qui feront ca mieux que toi, mais si arrives à faire part d'un problème ou bug nouveau en expliquant comment le reproduire, tu auras déjà aidé énormément !


Expert CakePHP - Co-gérant du studio web Occitech

Hors ligne

 

#6 16-09-2010 13:59:35

MoAX
Fraisier
Lieu: Tours
Date d'inscription: 10-08-2010
Messages: 55

Re: Utiliser CakePHP 1.3.4 ou 1.2.8

Je fouinerai un peu dans les pages du tracker dans ce cas. Je verrais bien ce que je peux faire, mais si je me trompe parce que je connais mal le framework j'aurais vraiment l'air d'un gland. big_smile tongue

Dernière modification par MoAX (16-09-2010 13:59:47)

Hors ligne

 

Pied de page des forums

Propuls� par FluxBB
Traduction par FluxBB.fr