Models — Schematics 0.9.2 documentation

### Navigation

- index
- modules |
- next |
- previous |
- Schematics 0.9.2 documentation »

# Models

class `schematics.models.` `FieldDescriptor`(name)

  The FieldDescriptor serves as a wrapper for Types that converts them into fields.

  A field is then the merger of a Type and it’s Model.

class `schematics.models.` `Model`(raw_data=None)

  Enclosure for fields and validation. Same pattern deployed by Django models, SQLAlchemy declarative extension and other developer friendly libraries.

  Initial field values can be passed in as keyword arguments to `__init__` to initialize the object with. Can raise `ConversionError` if it is not possible to convert the raw data into richer Python constructs.

  classmethod `allow_none`(field)

    Inspects a field and class for `serialize_when_none` setting.

    The setting defaults to the value of the class. A field can override the class setting with it’s own `serialize_when_none` setting.

  `atoms`()

    Iterator for the atomic components of a model definition and relevant data that creates a threeple of the field’s name, the instance of it’s type, and it’s value.

  `convert`(raw_data, **kw)

    Converts the raw data into richer Python constructs according to the fields on the model

    Parameters: | raw_data – The data to be converted

  `flatten`(role=None, prefix='')

    Return data as a pure key-value dictionary, where the values are primitive types (string, bool, int, long).

    Parameters: | role – Filter output by a specific role prefix – A prefix to use for keynames during flattening.

  `to_primitive`(role=None)

    Return data as it would be validated. No filtering of output unless role is defined.

    Parameters: | role – Filter output by a specific role

  `validate`(partial=False, strict=False)

    Validates the state of the model and adding additional untrusted data as well. If the models is invalid, raises ValidationError with error messages.

    Parameters: | partial – Allow partial data to validate; useful for PATCH requests. Essentially drops the `required=True` arguments from field definitions. Default: False strict – Complain about unrecognized keys. Default: False

class `schematics.models.` `ModelMeta`

  Meta class for Models.

class `schematics.models.` `ModelOptions`(klass, namespace=None, roles=None, serialize_when_none=True)

  This class is a container for all metaclass configuration options. Its primary purpose is to create an instance of a model’s options for every instance of a model.

## Usage

To learn more about how Models are used, visit Using Models

### Navigation

- index
- modules |
- next |
- previous |
- Schematics 0.9.2 documentation »