Class: Lafcadio::DateField

Inherits:
ObjectField show all
Defined in:
lib/lafcadio/objectField/DateField.rb

Overview

DateField represents a Date.

Direct Known Subclasses

MonthField

Constant Summary collapse

RANGE_NEAR_FUTURE =
0
RANGE_PAST =
1

Instance Attribute Summary collapse

Attributes inherited from ObjectField

#dbFieldName, #default, #defaultFieldName, #hideDisplay, #hideLabel, #name, #notNull, #notUniqueMsg, #objectType, #unique, #writeOnce

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ObjectField

#<=>, #bind_write?, #dbWillAutomaticallyWrite, #db_table_and_field_name, #englishName, #firstTime, instantiateFromXml, instantiateWithParameters, instantiationParameters, #nameForSQL, #nullErrorMsg, #prevValue, #processBeforeVerify, #verify, #verifyUniqueness

Constructor Details

#initialize(objectType, name = "date", englishName = nil) ⇒ DateField

Returns a new instance of DateField.



16
17
18
19
# File 'lib/lafcadio/objectField/DateField.rb', line 16

def initialize(objectType, name = "date", englishName = nil)
	super(objectType, name, englishName)
	@range = RANGE_NEAR_FUTURE
end

Instance Attribute Details

#rangeObject

Returns the value of attribute range.



14
15
16
# File 'lib/lafcadio/objectField/DateField.rb', line 14

def range
  @range
end

Class Method Details

.valueTypeObject

:nodoc:



10
11
12
# File 'lib/lafcadio/objectField/DateField.rb', line 10

def DateField.valueType # :nodoc:
	Date
end

Instance Method Details

#valueForSQL(value) ⇒ Object

:nodoc:



21
22
23
# File 'lib/lafcadio/objectField/DateField.rb', line 21

def valueForSQL(value) # :nodoc:
	value ? "'#{value.to_s}'" : 'null'
end

#valueFromSQL(dbiDate, lookupLink = true) ⇒ Object

:nodoc:



25
26
27
28
29
30
31
# File 'lib/lafcadio/objectField/DateField.rb', line 25

def valueFromSQL(dbiDate, lookupLink = true) # :nodoc:
	begin
		dbiDate ? dbiDate.to_date : nil
	rescue ArgumentError
		nil
	end
end