On Thu, Jun 20, 2013 at 4:16 AM, Evan Stone <[email protected]> wrote:
> Sure thing. Here are the snippets that gave me pause: > > "Think carefully before handling information not directly related to > authentication in your custom User Model. > > It may be better to store app-specific user information in a model that > has a relation with the User model. That allows each app to specify its own > user data requirements without risking conflicts with other apps...." > > along with > > "One limitation of custom User models is that installing a custom User > model will break any proxy model extending > User<https://docs.djangoproject.com/en/1.5/ref/contrib/auth/#django.contrib.auth.models.User>. > ..." > > and > > "Another limitation of custom User models is that you can’t use > django.contrib.auth.get_user_model()<https://docs.djangoproject.com/en/1.5/topics/auth/customizing/#django.contrib.auth.get_user_model> > as > the sender or target of " > > > Thanks for giving those details. I've opened ticket #20629 [1] to track this problem -- hopefully we can get this documentation cleaned up so we don't scare others in the future. [1] https://code.djangoproject.com/ticket/20629 By way of explanation: Points 1 and 2 are asking you to consider an architectural question -- do you need a custom user model at all? If you actually *are* using a username-based login system, and you just want to track some extra information about the user, the right approach may *not* be to create a custom user model. Points 3 and 4 are pointing out known limitations. Proxy models are a problem because they use subclassing, and they will be subclassing the wrong class; signals are a problem because at the point the signal is registered, there's no guarantee that the User model has been correctly defined. There's not much we can do about (3); (4) is something that should get cleaned up when we eventually land app refactor. Yours, Russ Magee %-) -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/django-users. For more options, visit https://groups.google.com/groups/opt_out.

