J'ai un formulaire qui contient un élément date et 3 éléments temps. Ceci est dû au fait que trois événements temporels se produisent à une date donnée, et je ne souhaite pas que l'utilisateur doive entrer cette date trois fois. Du côté serveur, je voudrais combiner la date avec les 3 fois pour obtenir 3 objets datetime. Je pensais que je pouvais juste faire quelque chose comme:Ruby Rails Time.change ne fonctionne pas comme je m'attendrais ... J'ai vérifié les docs!
time_object.change(:day => date_object.day, :month => date_object.month, :year => date_object.year)
mais cela n'a pas fonctionné. Voici un test simple, je l'ai écrit que j'attendre à travailler:
def before_validation
logger.info("show_time = " + self.show_time.to_s)
self.show_time.change(:year => 2012)
self.show_time.change(:minute => 30)
logger.info("show_time = " + self.show_time.to_s)
end
Les deux déclarations d'impression doivent être différentes, mais ils sont les mêmes. Est-ce que quelqu'un sait la meilleure façon de fusionner un objet Time et Date?
J'ai essayé de changer les parties d'un objet temps avec peu de chance. J'ai regardé les rdocs pour Time et je n'ai rien trouvé qui m'amènerait à utiliser la méthode "change". Merci pour cette réponse, m'a beaucoup aidé. – Tass
C'est quelqu'un de l'année 2012 ... euh ... Salut, tu as appelé? – wrongusername