Ajout d’un champ dans un formulaire avec cakephp sur un site en production et la mise en cache.

Cet article concerne principalement l’ajout de champ(s) dans une table de la base de donnée. La mise en cache peut parfois être la cause de certains soucis. C’est ce que nous allons voir dans ce bref article.

Utilisant Cakephp dans un site en production, je me vois dans l’obligation d’ajouter un champ dans un formulaire qui sera lui-même sauvegardé dans la table de la base de donnée du site.

Jusque là tout va bien, je vais dans mes vues (ajout, édition) et j’ajoute le champs en question (Cakephp version 1.3.x)

<?php echo $this->Form->input('champaajouter'); ?>

Je vais sur phpmyadmin et dans la table de la bdd en question, j’ajoute donc le champs ‘champaajouter’.

Sauf que lorsque je valide mon formulaire avec le nouveau champs, celui-ci ne s’ajoute pas ou ne se modifie pas!

La solution est en faite simple, il suffit d’aller sur votre serveur dans le dossier tmp/cache/models de votre application.

Vous avez des fichiers tel que cake_model_default_’nomdelatable’ . Vous supprimez le modèle concerné et tout rentrera dans l’ordre.