﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
21120	documentation talks about validators but separates definition and usage	nicolas@…	benhuckvale	"The top of the page deine a validator, the answer, but not the section about the validators.

This is at the top:

"""""" Validators are simple functions (or callables) that take a single argument and raise ValidationError on invalid input. Validators are run after the field’s to_python and validate methods have been called. """"""


This is the section about validators (middle of the page):


""""""
Using validators

Django’s form (and model) fields support use of simple utility functions and classes known as validators. These can be passed to a field’s constructor, via the field’s validators argument, or defined on the Field class itself with the default_validators attribute.

Simple validators can be used to validate values inside the field, let’s have a look at Django’s SlugField:

from django.forms import CharField
from django.core import validators

class SlugField(CharField):
    default_validators = [validators.validate_slug]

As you can see, SlugField is just a CharField with a customized validator that validates that submitted text obeys to some character rules. This can also be done on field definition so:

slug = forms.SlugField()

is equivalent to:

slug = forms.CharField(validators=[validators.validate_slug])

""""""

I think a simple example of a validator would be a nice thing to add. Or at least provide a link to the source code of the validator showcased.

This is from the 1.6 and (at the time), dev version too:

https://docs.djangoproject.com/en/1.6/ref/forms/validation/
https://docs.djangoproject.com/en/dev/ref/forms/validation/
"	Cleanup/optimization	closed	Documentation	1.6-beta-1	Normal	fixed	afraid-to-commit	Daniele Procida	Accepted	0	0	0	0	1	0
