2009-08-27 7 views
1

J'ai utilisé cakePHP 1.2 et je sais comment utiliser les comportements. En utilisant cakephp 1.1 sur un nouveau projet (je sais que cela peut paraître stupide mais le projet est très similaire à un projet plus ancien que nous avons construit sur 1.1). Après un peu de googling, je suis arrivé à croire que les modèles de cakephp 1.1 n'avaient pas de comportements. ne trouve pas non plus de référence dans le manuel.Comportements sur CakePHP 1.1

est-il un moyen de contourner ce problème? serait agréable d'avoir le comportement containable.

Vive

Répondre

1

Deceze est juste. Les comportements n'ont pas été introduits avant la branche 1.2. Quand je faisais mon développement précoce, j'ai écrit un comportement et j'ai réalisé que les comportements n'existaient pas encore.

Si vous ne pouvez tout simplement pas mettre à niveau, utilisez le modèle app_model. Je commencerais par importer/déclarer le comportement qui m'intéresse. Ensuite, je passerais en revue tous les beforeSaves, afterSaves, etc. et j'appellerai explicitement les méthodes de ce comportement aux endroits appropriés.

Mais encore une fois, il peut être plus facile de passer à 1.2.

2

Behaviors étaient en effet introduced in the 1.2 branch.

Je pense que la meilleure chose à faire serait de prendre le temps de mettre à jour votre application à 1.2. La branche Cake 1.1 est tellement terriblement obsolète maintenant. Le plus grand changement pratique est que les formulaires sont créés avec FormHelper au lieu de HtmlHelper maintenant, donc si vous avez beaucoup de formulaires c'est beaucoup de trouver/remplacer. Le reste devrait être assez compatible tout de suite.

Vous pouvez bien sûr pirater vos propres "comportements" en utilisant des rappels comme beforeSave pour invoquer certaines actions, mais je ne pense pas que ça en vaille la peine.