View source on GitHub |
The base class of all of our date/time properties.
Inherits From: Property
, expected_type
google.appengine.ext.db.DateTimeProperty(
verbose_name=None, auto_now=False, auto_now_add=False, **kwds
)
We handle common operations, like converting between time tuples and
datetime
instances.
Args | |
---|---|
verbose_name
|
Verbose name is always first parameter. |
auto_now
|
Date/time property is updated with the current time every time it is saved to the datastore. Useful for properties that want to track the modification time of an instance. |
auto_now_add
|
Date/time is set to the when its instance is created. Useful for properties that record the creation time of an entity. |
Child Classes
Methods
datastore_type
datastore_type()
Deprecated backwards-compatible accessor method for self.data_type
.
default_value
default_value()
Default value for datetime.
Returns | |
---|---|
value of now() as appropriate to the date-time instance if auto_now
or auto_now_add is set, else user configured default value
implementation.
|
empty
empty(
value
)
Determine if value is empty in the context of this property.
For most kinds, this is equivalent to "not value", but for kinds like
bool
, the test is more subtle, so subclasses can override this method
if necessary.
Args | |
---|---|
value
|
Value to validate against this Property .
|
Returns | |
---|---|
True if this value is considered empty in the context of this Property
type, otherwise False .
|
get_updated_value_for_datastore
get_updated_value_for_datastore(
model_instance
)
Get new value for property to send to datastore.
Returns | |
---|---|
now() as appropriate to the date-time instance in the odd case where
auto_now is set to True , else AUTO_UPDATE_UNCHANGED .
|
get_value_for_datastore
get_value_for_datastore(
model_instance
)
Datastore representation of this property.
Looks for this property in the given model instance, and returns the proper datastore representation of the value that can be stored in a datastore entity. Most critically, it will fetch the datastore key value for reference properties.
Some properies (e.g. DateTimeProperty
, UserProperty
) optionally update
their value on every put()
. This call must return the current value for
such properties (get_updated_value_for_datastore
returns the new value).
Args | |
---|---|
model_instance
|
Instance to fetch datastore value from. |
Returns | |
---|---|
Datastore representation of the model value in a form that is appropriate for storing in the datastore. |
make_value_from_datastore
make_value_from_datastore(
value
)
Native representation of this property.
Given a value retrieved from a datastore entity, return a value, possibly converted, to be stored on the model instance. Usually this returns the value unchanged, but a property class may override this when it uses a different datatype on the model instance than on the entity.
This API is not quite symmetric with get_value_for_datastore()
,
because the model instance on which to store the converted value
may not exist yet -- we may be collecting values to be passed to a
model constructor.
Args | |
---|---|
value
|
Value retrieved from the datastore entity. |
Returns | |
---|---|
The value converted for use as a model instance attribute. |
make_value_from_datastore_index_value
make_value_from_datastore_index_value(
index_value
)
now
@staticmethod
now()
Get now
as a full datetime
value.
Returns | |
---|---|
'now' as a whole timestamp, including both time and date. |
validate
validate(
value
)
Validate datetime.
Returns | |
---|---|
A valid value. |
Raises | |
---|---|
BadValueError if property is not instance of 'datetime'.
|
Class Variables | |
---|---|
creation_counter |
2
|