Validators¶
Bases¶
Base classes for validators
Use this classes as base class for your own validators.
-
class
djburger.validators.bases.IValidator[source]¶ Abstract base class for validators.
-
cleaned_data¶ Cleaned data dict (or other type). Set by is_valid method.
-
errors¶ Errors dict. Set by is_valid method.
key: name of invalid field or __all__. value: list of errors strings.
-
-
class
djburger.validators.bases.Form(data, request=None, **kwargs)[source]¶ Validator based on Django Forms.
-
class
djburger.validators.bases.ModelForm(data, request=None, **kwargs)[source]¶ Validator based on Django Model Forms.
-
class
djburger.validators.bases.Marshmallow(data, request=None, **kwargs)[source]¶ Validator based on marshmallow schema.
Wrappers¶
Wrappers for validators
Use this classes as wrappers for non-djburger validators
-
class
djburger.validators.wrappers.Form(validator)[source]¶ Wrapper for use Django Form (or ModelForm) as validator.
-
djburger.validators.wrappers.ModelForm¶ alias of
djburger.validators.wrappers.Form
-
class
djburger.validators.wrappers.Marshmallow(validator)[source]¶ Wrapper for use marshmallow scheme as validator.
-
class
djburger.validators.wrappers.PySchemes(validator)[source]¶ Wrapper for use PySchemes as validator.
-
class
djburger.validators.wrappers.Cerberus(validator)[source]¶ Wrapper for use Cerberus as validator.
Constructors¶
Constructors for validators
Use this classes for constructing your own validators.
-
djburger.validators.constructors.Any¶ alias of
djburger.validators.constructors.Or
-
djburger.validators.constructors.All¶
-
class
djburger.validators.constructors.Cerberus(**kwargs)[source]¶ Validate data by Cerberus.
Parameters: - schema (dict) – validation scheme for Cerberus.
- allow_unknown (bool) –
-
class
djburger.validators.constructors.Chain(*validators)[source]¶ Validate data by validators chain (like reduce function).
Calls the validators in order, passing in each subsequent cleaned data from the previous one.
Parameters: validators (list) – list of validators.
-
djburger.validators.constructors.Dict(validator)[source]¶ Validate data dict
Parameters: validator – validator which be applyed to all values of dict.
-
djburger.validators.constructors.DictMixed(validators, policy='error', required=False)[source]¶ Validate dict keys by multiple validators
Parameters: - validators (dict) – validator which be applyed to all values of dict.
- policy (str) – policy if validator for data not found: “error” - add error into errors attr and return False. “except” - raise KeyError exception. “ignore” - add source value into cleaned_data. “drop” - drop this value and continue.
-
djburger.validators.constructors.DictModelForm(form)[source]¶ Validate dict values by Django Model Forms
-
djburger.validators.constructors.IsBool= <djburger.validators.constructors.Type object>¶ Data type is bool
-
djburger.validators.constructors.IsDict= <djburger.validators.constructors.Type object>¶ Data type is dict
-
djburger.validators.constructors.IsFloat= <djburger.validators.constructors.Type object>¶ Data type is float
-
djburger.validators.constructors.IsInt= <djburger.validators.constructors.Type object>¶ Data type is int
-
djburger.validators.constructors.IsIter= <djburger.validators.constructors.Type object>¶ Data type is iterable
-
djburger.validators.constructors.IsList= <djburger.validators.constructors.Type object>¶ Data type is list
-
djburger.validators.constructors.IsStr= <djburger.validators.constructors.Type object>¶ Data type is str
-
class
djburger.validators.constructors.Lambda(key, error_msg='Custom validation is failed')[source]¶ Validate data by lambda expression.
Parameters: key (callable) – lambda, function or other callable object which get data and return bool result (True if valid).
-
djburger.validators.constructors.List(validator)[source]¶ Validate data list.
Parameters: validators – if passed only one validator it’s be applied to each list element. One validator will be applyed to one element sequentionaly otherwise.
-
djburger.validators.constructors.ListModelForm(form)[source]¶ Validate list elements by Django Model Forms
-
djburger.validators.constructors.ModelInstance= <djburger.validators.constructors.Chain object>¶ Validate model instance and convert it to dict.
Doesn’t require initialization.
-
class
djburger.validators.constructors.Or(*validators)[source]¶ Validate data by validators (like any function).
Calls the validators in order, return cleaned_data from first successfull validation or errors from last validator
Parameters: validators (list) – list of validators.
-
djburger.validators.constructors.OR¶ alias of
djburger.validators.constructors.Or
-
class
djburger.validators.constructors.PySchemes(**kwargs)[source]¶ Validate data by PySchemes.
Parameters: scheme – validation scheme for pyschemes.
-
class
djburger.validators.constructors.Type(data_type, error_msg='Invalid data type: {}. Required {}.')[source]¶ Validate data type
Parameters: - data_type (type) – required type of data.
- error_msg (str) – template for error message.
-
djburger.validators.constructors.QuerySet= <djburger.validators.constructors.Chain object>¶ Validate queryset and convert each object in it to dict.
Doesn’t require initialization.