Code

Changes between Version 7 and Version 8 of ContribAuthImprovements


Ignore:
Timestamp:
03/22/12 19:18:31 (2 years ago)
Author:
russellm
Comment:

Corrected the problems/advantages of proposal 2a

Legend:

Unmodified
Added
Removed
Modified
  • ContribAuthImprovements

    v7 v8  
    117117 
    118118 * Allows any user model, potentially independent of contrib.auth entirely. 
    119  * Existing projects require no migration (though distributable apps might become outdated if they don't respect the setting). 
     119 * Existing projects require no migration 
    120120 * Apps can explicitly signal their support of this new setting by using it and not referring to django.contrib.auth.User. For example, foreign key fields can be specified as `models.ForeignKey(settings.USER_MODEL)`. 
    121  * Doesn't have the circular dependency issue of solutions 1 and 2. 
    122  
     121  
    123122Optionally: 
    124123 
     
    133132 * Doesn't address the !EmailField length problem for existing users. We could address this by having a User model (reflecting current field lengths) and a new !SimpleUser (that reflects better defaults); then use global_settings and project template settings to define which User is the default for new vs existing projects. 
    134133 * Doesn't solve the analogous problem for any other project. 
     134 * Existing apps need to be updated to reflect the fact that auth.User may not be the User model. Failure modes will be unpredictable, as auth.User will still exist as a table, but won't contain any User information. 
     135 * Still has the settings-models circular dependency problem 
    135136 
    136137== Solution 3: Leverage App Refactor ==