View source on GitHub |
A Property whose value can be (almost) any basic type.
Inherits From: Property
, ModelAttribute
, expected_type
google.appengine.ext.ndb.GenericProperty(
name=None, compressed=False, **kwds
)
This is mainly used for Expando and for orphans (values present in Cloud Datastore but not represented in the Model subclass) but can also be used explicitly for properties with dynamically-typed values.
This supports compressed=True, which is only effective for str values (not for unicode), and implies indexed=False.
Methods
IN
IN(
value
)
Comparison operator for the IN
comparison operator.
The Python IN
operator cannot be overloaded in the way we want
to, so we define a method. For example:
Employee.query(Employee.rank.IN([4, 5, 6]))
Note that the method is called ._IN()
but may normally be invoked
as .IN()
; ._IN()
is provided for the case you have a
StructuredProperty
with a model that has a Property named IN
.
__eq__
__eq__(
value
)
Return a FilterNode
instance representing the =
comparison.
__ge__
__ge__(
value
)
Return a FilterNode
instance representing the >=
comparison.
__gt__
__gt__(
value
)
Return a FilterNode
instance representing the >
comparison.
__le__
__le__(
value
)
Return a FilterNode
instance representing the <=
comparison.
__lt__
__lt__(
value
)
Return a FilterNode
instance representing the <
comparison.
__ne__
__ne__(
value
)
Return a FilterNode
instance representing the !=
comparison.
__neg__
__neg__()
Return a descending sort order on this Property.
For example:
Employee.query().order(-Employee.rank)
__pos__
__pos__()
Returns an ascending sort order on this property.
Note that this is redundant but provided for consistency with
__neg__
. For example, the following two are equivalent:
Employee.query().order(+Employee.rank)
Employee.query().order(Employee.rank)