summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorswatantra <swatantra.kumar8@gmail.com>2019-06-26 11:44:47 +0530
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-07-04 08:05:20 +0200
commitc13e3715f5f46f2ee4ddba357e2589a45e831813 (patch)
tree5a59b2438463d27c8a264d43bca1243b26fa64ee /docs
parentc238e65e29494042d6ccf925c0a06a3135619799 (diff)
Fixed #28667 -- Clarified how to override list of forms fields for custom UserAdmin with a custom user model.
Diffstat (limited to 'docs')
-rw-r--r--docs/topics/auth/customizing.txt24
1 files changed, 24 insertions, 0 deletions
diff --git a/docs/topics/auth/customizing.txt b/docs/topics/auth/customizing.txt
index 007431ba33..daec10c28e 100644
--- a/docs/topics/auth/customizing.txt
+++ b/docs/topics/auth/customizing.txt
@@ -880,6 +880,28 @@ override any of the definitions that refer to fields on
``django.contrib.auth.models.AbstractUser`` that aren't on your
custom user class.
+.. note::
+
+ If you are using a custom ``ModelAdmin`` which is a subclass of
+ ``django.contrib.auth.admin.UserAdmin``, then you need to add your custom
+ fields to ``fieldsets`` (for fields to be used in editing users) and to
+ ``add_fieldsets`` (for fields to be used when creating a user). For
+ example::
+
+ from django.contrib.auth.admin import UserAdmin
+
+ class CustomUserAdmin(UserAdmin):
+ ...
+ fieldsets = UserAdmin.fieldsets + (
+ (None, {'fields': ('custom_field',)}),
+ )
+ add_fieldsets = UserAdmin.add_fieldsets + (
+ (None, {'fields': ('custom_field',)}),
+ )
+
+ See :ref:`a full example <custom-users-admin-full-example>` for more
+ details.
+
Custom users and permissions
----------------------------
@@ -974,6 +996,8 @@ If your project uses proxy models, you must either modify the proxy to extend
the user model that's in use in your project, or merge your proxy's behavior
into your :class:`~django.contrib.auth.models.User` subclass.
+.. _custom-users-admin-full-example:
+
A full example
--------------