http://gist.github.com/179712

Le 2 septembre 2009 15:20, Cyril Mougel <[email protected]> a écrit :

>
> Yannick Francois a écrit :
> > Le 2 septembre 2009 13:48, Jean-Philippe
> > Moal<[email protected]> a écrit :
> >
> >> Yannick Francois a écrit :
> >>
> >>> J'ai un formulaire contenant des dates (on peut dire une déjà, ça
> >>> devrait suffire). Formulaire créé avec les helpers de rails (form_for
> >>> ...) sauf pour la date car je n'aime pas le helper "datetime_select".
> >>>
> >>>
> >>> Le soucis c'est que ma date arrive dans la requete HTTP au format
> >>> français: "25/09/2009" et que mon modèle ne semble pas capable de lire
> >>> cette date dans le "new".
> >>>
> >>> Comment procédez vous ?
> >>> Faut-il que je parse mes dates une par une avant de les assigner à mon
> modèle ?
> >>>
> >>>
> >> La dernière fois j'ai utilisé le datepicker de jquery, il permet de
> >> définir un champ hidden avec un format au choix.
> >>
> >>
> >
> > J'avoue qu'après réfléxion, je me dit que je vais utiliser un champs
> > caché également. Ce qui me gène c'est le coté "je met encore du
> > javascript pour mettre à jour mon champ caché"....
> >
> > Mais par défaut, je vais faire ça.
> >
> >
> Si tu es sûr que ton format de date est fixe tu peux faire :
>
> class User < AR::Base
>
>  def french_date=(date)
>    self.my_date_field = Time.strftime('%d/%m/%Y', date)
>  end
>  def french_date
>    Time.strptime('%d/%m/%Y',self.my_date_field) # '12/12/2009'
>  end
> end
>
> et
>
> <%= f.text_field :french_date %>
>
> Ca marche bien aussi
>
> PS : pas testé le strftime/strptime et la flemme de regarder la doc pour
> le format exact
>
> --
> Cyril Mougel
> http://blog.shingara.fr/
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]
-~----------~----~----~----~------~----~------~--~---

Répondre à