Парсинг даты/времени и значение по умолчанию

Опубликовано 27.11.2008

Хочется парсить дату/время из строки и в случае некорректного формата просто выдавать значение по умолчанию. Сделал такой вот маленький модуль:

module DateTimeParseWithDefault
  def parse_or_default(*args)
    default = args.pop
    begin
      parse(*args)
    rescue
      default
    end
  end
end

Date.extend(DateTimeParseWithDefault)
Time.extend(DateTimeParseWithDefault)

Использование:

@date = Date.parse_or_default(params[:date], Date.today)
@time = Time.parse_or_default(params[:time], Time.now - 1.month)
Подпишись и читай
Самые продвинутые ruby-программеры уже читают Rail0rz в формате RSS. Присоединяйся!
Комментарии
  1. estarter27.11.2008

    Я бы сделал отдельные методы для Date и Time с установкой дефолтного значения в Date.today и Time.now соответственно…