Use AUTH_USER_MODEL consistently between various Django versions. Closes #946

This commit is contained in:
Tom Christie 2013-06-26 17:56:42 +01:00
parent 13a3c993ab
commit 715bd47dfa
3 changed files with 6 additions and 10 deletions

View File

@ -1,7 +1,7 @@
import uuid import uuid
import hmac import hmac
from hashlib import sha1 from hashlib import sha1
from rest_framework.compat import User from rest_framework.compat import AUTH_USER_MODEL
from django.conf import settings from django.conf import settings
from django.db import models from django.db import models
@ -11,7 +11,7 @@ class Token(models.Model):
The default authorization token model. The default authorization token model.
""" """
key = models.CharField(max_length=40, primary_key=True) key = models.CharField(max_length=40, primary_key=True)
user = models.OneToOneField(User, related_name='auth_token') user = models.OneToOneField(AUTH_USER_MODEL, related_name='auth_token')
created = models.DateTimeField(auto_now_add=True) created = models.DateTimeField(auto_now_add=True)
class Meta: class Meta:

View File

@ -83,15 +83,9 @@ def get_concrete_model(model_cls):
# Django 1.5 add support for custom auth user model # Django 1.5 add support for custom auth user model
if django.VERSION >= (1, 5): if django.VERSION >= (1, 5):
from django.conf import settings from django.conf import settings
if hasattr(settings, 'AUTH_USER_MODEL'): AUTH_USER_MODEL = settings.AUTH_USER_MODEL
User = settings.AUTH_USER_MODEL
else:
from django.contrib.auth.models import User
else: else:
try: AUTH_USER_MODEL = 'auth.User'
from django.contrib.auth.models import User
except ImportError:
raise ImportError("User model is not to be found.")
if django.VERSION >= (1, 5): if django.VERSION >= (1, 5):

View File

@ -134,6 +134,8 @@ PASSWORD_HASHERS = (
'django.contrib.auth.hashers.CryptPasswordHasher', 'django.contrib.auth.hashers.CryptPasswordHasher',
) )
AUTH_USER_MODEL = 'auth.User'
import django import django
if django.VERSION < (1, 3): if django.VERSION < (1, 3):