Haha ..L'utilizzo di Chronic può compromettere il senso del tempo?
Sto utilizzando Chronic per analizzare il tempo che gli utenti aggiungono nel calendario. Laddove il codice funziona e implementa il momento giusto, il risultato finale è che, SE un utente aggiunge un tempo, non ha una data e poiché non ha una data, non verrà mostrato nei risultati. Qualche idea?
def set_dates
unless self.natural_date.blank? || Chronic.parse(self.natural_date).blank?
# check if we are dealing with a date or a date + time
if time_provided?(self.natural_date)
self.date = nil
self.time = Chronic.parse(self.natural_date)
else
self.date = Chronic.parse(self.natural_date).to_date
self.time = nil
end
end
unless self.natural_end_date.blank? || Chronic.parse(self.natural_end_date).blank?
# check if we are dealing with a date or a date + time
if time_provided?(self.natural_end_date)
self.end_date = nil
self.end_time = Chronic.parse(self.natural_end_date)
else
self.end_date = Chronic.parse(self.natural_end_date).to_date
self.end_time = nil
end
end
end
Edit:
Ecco l'time_provided? Metodo:
def time_provided?(natural_date_string)
date_span = Chronic.parse(natural_date_string, :guess => false)
(date_span.last - date_span.first).to_i == 1
end
Devo ammettere, quando ho letto il titolo di questo, mi ha fatto ridere. –
ha! anche io, pensavo fosse un troll –
+1 All'inizio ero wtf. Poi ho riso. Allora ho pianto. Poi sono diventato alto. – Alan