BOnjour à tous,
comme je ne trouvais pas de moyen pour gérer les formats de date, je me suis fais deux petites fonctions qui transforment les dates (au format dd/mm/yyyy ) pour l'enregistrement en base ou leur récupération.
dans mon controller j'ai une function :
public function datefrSql($var){
list($jour,$mois,$annee) = explode('/',$var);
$date = $annee.'-'.$mois.'-'.$jour;
return $date;
}
/// Dans la fonction ajout j'ai :
public function ajout(){
$this->request->data'Indivs']'date_naiss'] = datefrSql($this->request->data'Indivs']'date_naiss']);
// la suite avec un save etc....
}
Cette fonction fonctionne parfaitement, car je l'utilisais avant dans des projets sans cakephp.
Lorsque je fais tourner mon appli, j'ai droit à une erreur fatale qui me précise que la fonction datefrSql n'est pas définie....
Alors lç je n'y comprends plus rien. Je la définie plus haut?
J'imagine que cela doit être complètement débile comme solution, mais là je suis à l'ouest.
vous pouvez m'orienter?
Bon We à tous
N'oublie pas de mettre résolu du coup.
Tant qu'à faire, j'en profiterai pour faire une classe genre DateUtils, que je placerai dans app/Lib pour avoir plus de flexibilité.
Je me réponds car ma bêtise vient de sauter au visage :
il faut faire une
public function ajout(){
$this->request->data'Indivs']'date_naiss'] = $this->datefrSql($this->request->data'Indivs']'date_naiss']);
// la suite avec un save etc....
}
P... faut vraiment que j'aille dormir...
Salut à tous les deux,
En fait j'attendais de voir ce que mon truc donnait avant de "résolu-er" le sujet.
Comme tu le préconnise prbaron, je me suis fais une petite classe Utils, dans Lib, histoire d'y placer toutes les petites fonctions de ce genre, que l'on utilise tous les jours et qui sont CH..... à refaire.
Mais, je me pose une question : Dans ce genre de cas, il est préférable de faire une lib ou un Helper ?? En pratique, il n'yva pas beaucoup de différence mais qu'est-ce qui est le plus rigoureux ??
A+
A mon sens les Helpers sont à utiliser dans une vue seulement. Les classes dans Lib sont à utiliser dans les Controllers ou Models.
C'est ce que je me disais aussi, mais comme cela fait très peu de temps que je me suis mis à Cake, j'ai peur de dire une connerie.
Donc on utilise les Lib.
Je clos le sujet bonne fin de soirée
En utilisant le helper Time de cakephp ça ne fonctionnait pas ?
http://book.cakephp.org/2.0/fr/core-libraries/helpers/time.html
Raphael
salut raphael,
en fait je me bat avec l'utilisation du TimeHelper
dans mon controller j'ai :
$public $Helpers = array('Time');
et dans la vue un truc comme :
echo $this->Form->input($this->Time->format('d/m/Y','date_naiss'), array('type'=>'text','label'=>'Date de Naissance : '));
Mais cela ne fait rien, je me retrouve toujours avec un DateTime à l'anglaise.
Je ne comprends pas
Un truc qui marche chez moi echo $this->Time->format('d/m/Y', $user'User']'created']);
$user correspond a ce que je transmet depuis mon controller
Ta variable date de naissance tu l'écris comment ?
Raph