On Friday, March 16, 2012 at 1:29 PM, Tom Evans wrote:
> I'm not in favour of pluggable user models, as for me, they solve the
> wrong problem. A pluggable user model has to be set up by the project
> developer, whilst the attributes an app may need are specified solely
> by the app developer.
> 
> If a project developer decides to add a 3rd party app to his project,
> where do the user preferences for that app live? Does the user model
> automatically get expanded with the extra fields required by that app?
> It all seems icky to me.
> 
> To my mind, User + app specific user profiles are the correct
> approach, plus fixing the current minor issues with d.c.a., and
> providing tools and documentation to allow users to manage that
> change.
> 
> Put another way, what does a pluggable user model get us? What is the
> big selling point, apart from being able to specify arbitrary columns
> to appear in auth_user rather than myapp_userprofile.
> 
> 
> 

Well said; this is what I was trying to get at in my reservations about this 
approach. Thanks for more fully articulating it.

I think the one thing we lose by deciding not to go with a pluggable user 
object is a bit of performance. That is, instead of a single "SELECT FROM 
user_table" we get a "SELECT FROM user_table" followed by a "SELECT FROM 
profile_table" (or a select_related-style join, best case). I'm OK with this, 
myself, but it's worth having on the record I think.

Jacob

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-developers@googlegroups.com.
To unsubscribe from this group, send email to 
django-developers+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to