diff options
Diffstat (limited to 'docs/ref/models')
| -rw-r--r-- | docs/ref/models/constraints.txt | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/docs/ref/models/constraints.txt b/docs/ref/models/constraints.txt index 4ed5b65d46..efe63a8ac1 100644 --- a/docs/ref/models/constraints.txt +++ b/docs/ref/models/constraints.txt @@ -131,7 +131,7 @@ ensures the age field is never less than 18. ``UniqueConstraint`` ==================== -.. class:: UniqueConstraint(*expressions, fields=(), name=None, condition=None, deferrable=None, include=None, opclasses=(), violation_error_code=None, violation_error_message=None) +.. class:: UniqueConstraint(*expressions, fields=(), name=None, condition=None, deferrable=None, include=None, opclasses=(), nulls_distinct=None, violation_error_code=None, violation_error_message=None) Creates a unique constraint in the database. @@ -254,6 +254,26 @@ creates a unique index on ``username`` using ``varchar_pattern_ops``. ``opclasses`` are ignored for databases besides PostgreSQL. +``nulls_distinct`` +------------------ + +.. versionadded:: 5.0 + +.. attribute:: UniqueConstraint.nulls_distinct + +Whether rows containing ``NULL`` values covered by the unique constraint should +be considered distinct from each other. The default value is ``None`` which +uses the database default which is ``True`` on most backends. + +For example:: + + UniqueConstraint(name="ordering", fields=["ordering"], nulls_distinct=False) + +creates a unique constraint that only allows one row to store a ``NULL`` value +in the ``ordering`` column. + +``nulls_distinct`` is ignored for databases besides PostgreSQL 15+. + ``violation_error_code`` ------------------------ |
