class Stockboy::Translations::Date
Convert ISO-8601 and other recognized date-like strings to Date
Job
template DSL
¶ ↑
Registered as :date
. Use with:
attributes do check_in as: :date end
@example
date = Stockboy::Translator::Date.new record.check_in = "2012-01-01" date.translate(record, :check_in) # => #<Date 2012-01-01> record.check_in = "Jan 1, 2012" date.translate(record, :check_in) # => #<Date 2012-01-01>
Public Instance Methods
translate(context)
click to toggle source
@return [Date]
# File lib/stockboy/translations/date.rb, line 28 def translate(context) value = field_value(context, field_key) return nil if value.blank? case value when ::String then parse_date(value.strip) when ::Time, ::DateTime then ::Date.new(value.year, value.month, value.day) when ::Date then value else nil end end
Private Instance Methods
parse_date(value)
click to toggle source
Generic parse action, overridden by subclasses @return [Date]
# File lib/stockboy/translations/date.rb, line 45 def parse_date(value) ::Date.parse(value) end