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.