Skip to main content

Simple and flexible model validator for Peewee ORM.

None

Project description

A simple and flexible model and data validator for Peewee ORM.

Build Status Code Coverage Version Downloads

Requirements

  • python >= 3.3

  • peewee >= 2.8.0

  • python-dateutil >= 2.5.0

Installation

This package can be installed using pip:

pip install peewee-validates

Usage

Here’s a quick teaser of what you can do with peewee-validates:

import peewee
from peewee_validates import ModelValidator

class Category(peewee.Model):
    code = peewee.IntegerField(unique=True)
    name = peewee.CharField(null=False, max_length=250)

obj = Category(code=42)

validator = ModelValidator(obj)
validator.validate()

print(validator.errors)

{'name': 'is required', 'code': 'must be unique'}

In fact, there is also a generic validator that does not even require a model:

from peewee_validates import Validator, Field

class SimpleValidator(Validator):
    name = Field('str', required=True, max_length=250)
    code = Field('str', required=True, max_length=4)

validator = SimpleValidator(obj)
validator.validate({'code': 'toolong'})

print(validator.errors)

{'name': 'is required', 'code': 'too long'}

Todo

  • More documentation

  • More examples

Feedback

This package is very immature. If you have any comments, suggestions, feedback, or issues, please feel free to send me a message or submit an issue on Github.

Project details

None

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

peewee_validates-0.2.0-py3-none-any.whl (8.1 kB view hashes)

Uploaded Python 3

Supported by

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