summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/topics/auth.txt30
1 files changed, 30 insertions, 0 deletions
diff --git a/docs/topics/auth.txt b/docs/topics/auth.txt
index 35777d075e..efc6e78413 100644
--- a/docs/topics/auth.txt
+++ b/docs/topics/auth.txt
@@ -664,6 +664,36 @@ the handler, if ``created`` is ``True``, create the associated user profile::
.. seealso:: :doc:`/topics/signals` for more information on Django's signal
dispatcher.
+Adding UserProfile fields to the admin
+--------------------------------------
+
+To add the UserProfile fields to the user page in the admin, define an
+:class:`~django.contrib.admin.InlineModelAdmin` (for this example, we'll use a
+:class:`~django.contrib.admin.StackedInline`) in your app's ``admin.py`` and
+add it to a ``UserAdmin`` class which is registered with the
+:class:`~django.contrib.auth.models.User` class::
+
+ from django.contrib import admin
+ from django.contrib.auth.admin import UserAdmin
+ from django.contrib.auth.models import User
+
+ from my_user_profile_app.models import UserProfile
+
+ # Define an inline admin descriptor for UserProfile model
+ # which acts a bit like a singleton
+ class UserProfileInline(admin.StackedInline):
+ model = UserProfile
+ can_delete = False
+ verbose_name_plural = 'profile'
+
+ # Define a new User admin
+ class UserAdmin(UserAdmin):
+ inlines = (UserProfileInline, )
+
+ # Re-register UserAdmin
+ admin.site.unregister(User)
+ admin.site.register(User, UserAdmin)
+
Authentication in Web requests
==============================