Boolean
Boolean fields store boolean values, as expected. It also provides convienence for accepting truthy or falsy values. See the usage section for more details.
Import
from marrow.mongo.field import Boolean
Inherits
marrow.mongo:Field
Attributes
This field type inherits all Field attributes and represents a singular, scalar boolean value. In addition to the storage and retrieval of pure True and False values, the field configuration defines allowable "truthy" values (to cast to True) and "falsy" values (to cast to False).
truthy
truthyValues to interpret as True, storing True if they are assigned.
Default('true', 't', 'yes', 'y', 'on', '1', True)
Added>=1.1.3
falsy
falsyValues to interpret as False, storing False if they are assigned.
Default('false', 'f', 'no', 'n', 'off', '0', False)
Added>=1.1.3
In versions prior to 1.1.3 the "truthy" and "falsy" values are hardcoded at the defaults presented above.
Usage
Instantiate and assign an instance of this class during construction of a new Document subclass. Accessing as a class attribute will return a Queryable allowing filtering operations, and access as an instance attribute will return a bool cast value.
Assignment of any value matched by the truthy iterable (via in comparison) will store True, and likewise with the falsy iterable storing False. Additionally, if an attempt is made to assign a non-boolean, non-string value, the value will be passed through bool() conversion prior to storage, allowing use of objects which define their own __nonzero__/__bool__ methods.
Last updated
Was this helpful?