OpenQuizz
Une application de gestion des contenus pédagogiques
apispec.ext.marshmallow.field_converter Namespace Reference

Data Structures

class  FieldConverterMixin
 

Functions

def make_type_list (types)
 
def make_min_max_attributes (validators, min_attr, max_attr)
 

Variables

 RegexType = type(re.compile(""))
 
dictionary DEFAULT_FIELD_MAPPING
 

Detailed Description

Utilities for generating OpenAPI Specification (fka Swagger) entities from
:class:`Fields <marshmallow.fields.Field>`.

.. warning::

This module is treated as private API.
Users should not need to use this module directly.

Function Documentation

◆ make_min_max_attributes()

def apispec.ext.marshmallow.field_converter.make_min_max_attributes (   validators,
  min_attr,
  max_attr 
)
Return a dictionary of minimum and maximum attributes based on a list
of validators. If either minimum or maximum values are not present in any
of the validator objects that attribute will be omitted.

:param validators list: A list of `Marshmallow` validator objects. Each
    objct is inspected for a minimum and maximum values
:param min_attr string: The OpenAPI attribute for the minimum value
:param max_attr string: The OpenAPI attribute for the maximum value

◆ make_type_list()

def apispec.ext.marshmallow.field_converter.make_type_list (   types)
Return a list of types from a type attribute

Since OpenAPI 3.1.0, "type" can be a single type as string or a list of
types, including 'null'. This function takes a "type" attribute as input
and returns it as a list, be it an empty or single-element list.
This is useful to factorize type-conditional code or code adding a type.

Variable Documentation

◆ DEFAULT_FIELD_MAPPING

dictionary DEFAULT_FIELD_MAPPING
Initial value:
1 = {
2  marshmallow.fields.Integer: ("integer", None),
3  marshmallow.fields.Number: ("number", None),
4  marshmallow.fields.Float: ("number", None),
5  marshmallow.fields.Decimal: ("number", None),
6  marshmallow.fields.String: ("string", None),
7  marshmallow.fields.Boolean: ("boolean", None),
8  marshmallow.fields.UUID: ("string", "uuid"),
9  marshmallow.fields.DateTime: ("string", "date-time"),
10  marshmallow.fields.Date: ("string", "date"),
11  marshmallow.fields.Time: ("string", None),
12  marshmallow.fields.TimeDelta: ("integer", None),
13  marshmallow.fields.Email: ("string", "email"),
14  marshmallow.fields.URL: ("string", "url"),
15  marshmallow.fields.Dict: ("object", None),
16  marshmallow.fields.Field: (None, None),
17  marshmallow.fields.Raw: (None, None),
18  marshmallow.fields.List: ("array", None),
19 }

◆ RegexType

RegexType = type(re.compile(""))
marshmallow.fields.Integer
Definition: fields.py:905
marshmallow.fields.Date
Definition: fields.py:1332
marshmallow.fields.String
Definition: fields.py:802
marshmallow.fields.Decimal
Definition: fields.py:961
marshmallow.fields.Float
Definition: fields.py:933
marshmallow.fields.Field
Definition: fields.py:73
marshmallow.fields.Email
Definition: fields.py:1616
marshmallow.fields.Number
Definition: fields.py:852
marshmallow.fields.DateTime
Definition: fields.py:1142
marshmallow.fields.UUID
Definition: fields.py:828
marshmallow.fields.List
Definition: fields.py:650
marshmallow.fields.Raw
Definition: fields.py:415
marshmallow.fields.TimeDelta
Definition: fields.py:1361
marshmallow.fields.Dict
Definition: fields.py:1564
marshmallow.fields.Time
Definition: fields.py:1307
marshmallow.fields.Boolean
Definition: fields.py:1046