Changes between Version 15 and Version 16 of ContribAuthImprovements


Ignore:
Timestamp:
Apr 3, 2012, 9:50:17 AM (13 years ago)
Author:
Alex Ogier
Comment:

Update solution 2a: auth.User doesn't need to be an orphan table causing subtle failures

Legend:

Unmodified
Added
Removed
Modified
  • ContribAuthImprovements

    v15 v16  
    116116Introduce an `USER_MODEL` setting (not necessarily related to `AUTH` at all) that defaults to `"auth.User"`.
    117117
     118Then, suppress the auth.User model when it is not in use to make failure modes predictable and noisy.
     119
    118120There is a branch of django trunk that implements the basic idea:
    119121
     
    138140 * 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.
    139141 * Doesn't solve the analogous problem for any other project.
    140  * Existing apps need to be updated to reflect the fact that auth.User may not be the User model. All instance of !ForeignKey(User) need to updated to !ForeignKey(settings.AUTH_USER). Failure modes will be unpredictable, as auth.User will still exist as a table, but won't contain any User information.
     142 * Existing apps need to be updated to reflect the fact that auth.User may not be the User model. All instance of !ForeignKey(User) need to updated to !ForeignKey(settings.AUTH_USER).
    141143 * Still has the settings-models circular dependency problem
    142144 * As with Solution 2, prone to unpredictable problems if `USER_MODEL` is modified after the initial syncdb.
Back to Top