12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- ===========================
- Check constraints reference
- ===========================
- .. module:: django.db.models.constraints
- .. currentmodule:: django.db.models
- .. versionadded:: 2.2
- The ``CheckConstraint`` class creates database check constraints. They are
- added in the model :attr:`Meta.constraints
- <django.db.models.Options.constraints>` option. This document
- explains the API references of :class:`CheckConstraint`.
- .. admonition:: Referencing built-in constraints
- Constraints are defined in ``django.db.models.constraints``, but for
- convenience they're imported into :mod:`django.db.models`. The standard
- convention is to use ``from django.db import models`` and refer to the
- constraints as ``models.CheckConstraint``.
- ``CheckConstraint`` options
- ===========================
- .. class:: CheckConstraint(*, check, name)
- Creates a check constraint in the database.
- ``check``
- ---------
- .. attribute:: CheckConstraint.check
- A :class:`Q` object that specifies the check you want the constraint to
- enforce.
- For example ``CheckConstraint(check=Q(age__gte=18), name='age_gte_18')``
- ensures the age field is never less than 18.
- ``name``
- --------
- .. attribute:: CheckConstraint.name
- The name of the constraint.
|