Skip to main content

Validate library for python 3

Project description

Agnostic validators for python 3

Freely based on [WTF-Forms](https://github.com/wtforms/wtforms) validators.

Features

  • Python 3 package.

  • Easy to create a validator.

  • Chained validations.

  • Specific error control messages.

  • No database dependent.

Installation

$ pip install dirty-validators

Basic usage

from dirty_validators.basic import EqualTo, Length, Regexp, Email
from dirty_validators.complex import Optional, ModelValidate

validator = Optional(validators=[EqualTo(comp_value="test")])

assert validator.is_valid("test") is True

# Chained validation
validator_chain = Chain(validators=[Length(min=14, max=16), Regexp(regex='^abc'), Email()])

assert validator_chain.is_valid('abcdefg@test.com')

# Model validation

class MyModelValidator(ModelValidate):
    fieldName1 = Optional(validators=[Length(min=4, max=6)])
    fieldName2 = Optional(validators=[Length(min=1, max=2)])
    fieldName3 = Required(validators=[Length(min=7, max=8)])

validator_model = MyModelValidator()

data = {
    "fieldName1": "1234",
    "fieldName1": "12",
    "fieldName3": "123456qw"
 }

assert validator_model.is_valid(FakeModel(data)) is True

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dirty-validators-0.1.6.tar.gz (8.0 kB view details)

Uploaded Source

File details

Details for the file dirty-validators-0.1.6.tar.gz.

File metadata

File hashes

Hashes for dirty-validators-0.1.6.tar.gz
Algorithm Hash digest
SHA256 88ce6d2c7f645195f0b584c463402f47eab7bed1b065959d2ac5892ffe6d3050
MD5 266f30f1f082f43c4e98dc618516e976
BLAKE2b-256 9b88b739f4cfe38d3f815b9f00a3144e615d9eff22a541878cf48f5a36da9f5d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page