Je travaille sur un projet de rails pour un site web australien. Par conséquent, ils veulent être en mesure d'entrer des formats de date dans la norme européenne de «jj/mm/aaaa» plutôt que dans le format «mm/jj/aaaa» centré sur les États-Unis. J'ai un modèle ActiveRecord avec un champ Date. J'utilise le sélecteur de date de jQuery pour fournir la date sélectionnée sur un champ de texte, et je le mets à un format approprié. Mais quand j'essaie de sauvegarder le disque, la date est erronée. Même lorsque j'ai défini les formats de date personnalisés dans un intializer selon le guide i18n.Rails ActiveRecord analyse de date pour i18n (formats de date spécifiquement européens)
>> b = BlogPost.new
>> b.posted_on = '20/07/2010'
=> "20/07/2010"
>> b.posted_on
=> nil
>> b.posted_on = '07/20/2010'
=> Tue, 20 Jul 2010
Il semble que Rails n'utilise que Date.parse pour convertir la chaîne en un objet Date. Est-il possible de résoudre ce problème pour l'ensemble du projet? Je ne veux pas avoir à écrire du code personnalisé pour chaque modèle.
solution fonctionne et est simple. Si vous avez besoin de solutions plus inclusives, voyez [délocaliser] (https://github.com/clemens/delocalize) ou [i18n_alchemy] (https://github.com/carlosantoniodasilva/i18n_alchemy). – Mike