Commit 981e3b93 authored by Tim Graham's avatar Tim Graham
Browse files

Fixed #24429 -- Doc'ed that Django 1.8 doesn't require an integer PK for custom user models.

parent e37d52bd
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -477,19 +477,22 @@ Specifying a custom User model

Django expects your custom User model to meet some minimum requirements.

1. Your model must have an integer primary key.

2. Your model must have a single unique field that can be used for
#. Your model must have a single unique field that can be used for
   identification purposes. This can be a username, an email address,
   or any other unique attribute.

3. Your model must provide a way to address the user in a "short" and
#. Your model must provide a way to address the user in a "short" and
   "long" form. The most common interpretation of this would be to use
   the user's given name as the "short" identifier, and the user's full
   name as the "long" identifier. However, there are no constraints on
   what these two methods return - if you want, they can return exactly
   the same value.

.. versionchanged:: 1.8

    Older versions of Django required your model to have an integer primary
    key as well.

The easiest way to construct a compliant custom User model is to inherit from
:class:`~django.contrib.auth.models.AbstractBaseUser`.
:class:`~django.contrib.auth.models.AbstractBaseUser` provides the core