环境
Python 3.7.7
Django 2.2.10
djangorestframework 3.11.0
描述
在使用 Django Rest Framework 构造 API 时,使用如下代码,为数据库中已有的用户生成 token
from django.contrib.auth.models import User
from rest_framework.authtoken.models import Token
for user in User.objects.all():
Token.objects.create(user=user)
...
报错
AttributeError: type object 'Token' has no attribute 'objects
解决
1.添加 'rest_framework.authtoken' 至 settings.py 的 INSTALLED_APPS 中
2.使用 manage.py 进行数据库迁移
python manage.py makemigrations
python manage.py migrate
参考
https://github.com/encode/django-rest-framework/issues/6250
https://github.com/Tivix/django-rest-auth/issues/5