diff options
| -rw-r--r-- | djangorestframework/tokenauth/models.py | 16 | ||||
| -rw-r--r-- | docs/api-guide/authentication.md | 2 |
2 files changed, 4 insertions, 14 deletions
diff --git a/djangorestframework/tokenauth/models.py b/djangorestframework/tokenauth/models.py index 81d98863..f289b0fd 100644 --- a/djangorestframework/tokenauth/models.py +++ b/djangorestframework/tokenauth/models.py @@ -1,25 +1,15 @@ import uuid from django.db import models -class BaseToken(models.Model): +class BasicToken(models.Model): """ - The base abstract authorization token model class. + The default authorization token model class. """ key = models.CharField(max_length=32, primary_key=True, blank=True) user = models.ForeignKey('auth.User') revoked = models.BooleanField(default=False) - class Meta: - abstract=True - def save(self, *args, **kwargs): if not self.key: self.key = uuid.uuid4().hex - return super(BaseToken, self).save(*args, **kwargs) - - -class BasicToken(BaseToken): - """ - The default authorization token model class. - """ - pass + return super(BasicToken, self).save(*args, **kwargs) diff --git a/docs/api-guide/authentication.md b/docs/api-guide/authentication.md index 5f176d02..45da2c55 100644 --- a/docs/api-guide/authentication.md +++ b/docs/api-guide/authentication.md @@ -78,7 +78,7 @@ If successfully authenticated, `TokenAuthentication` provides the following cred * `request.user` will be a `django.contrib.auth.models.User` instance. * `request.auth` will be a `djangorestframework.tokenauth.models.BasicToken` instance. -To use the `TokenAuthentication` policy, you must have a token model. Django REST Framework comes with a minimal default token model. To use it, include `djangorestframework.tokenauth` in your installed applications and sync your database. To use your own token model, subclass the `djangorestframework.tokenauth.TokenAuthentication` class and specify a `model` attribute that references your custom token model. The token model must provide `user`, `key`, and `revoked` attributes. For convenience, the `djangorestframework.tokenauth.models.BaseToken` abstract model implements this minimum contract, and also randomly populates the key field when none is provided. +To use the `TokenAuthentication` policy, you must have a token model. Django REST Framework comes with a minimal default token model. To use it, include `djangorestframework.tokenauth` in your installed applications and sync your database. To use your own token model, subclass the `djangorestframework.tokenauth.TokenAuthentication` class and specify a `model` attribute that references your custom token model. The token model must provide `user`, `key`, and `revoked` attributes. Refer to the `djangorestframework.tokenauth.models.BasicToken` model as an example. ## OAuthAuthentication |
