use*_*508 2 django django-views django-users django-rest-framework
我用的时候
from django.conf import settings
Run Code Online (Sandbox Code Playgroud)
在我的DjangoRestFramework视图中,
class UserList(ListCreateAPIView):
queryset = settings.AUTH_USER_MODEL.objects.all()
serializer_class = UserSerializer
Run Code Online (Sandbox Code Playgroud)
我收到了错误
AttributeError at /users/
'str' object has no attribute 'objects'
Request Method: GET
Request URL: http://localhost:9999/users/
Django Version: 1.5.1
Exception Type: AttributeError
Exception Value:
'str' object has no attribute 'objects'
Run Code Online (Sandbox Code Playgroud)
settings.AUTH_USER_MODEL是一个字符串.它不是模型对象.
你需要做这样的事情:
try:
from django.contrib.auth import get_user_model
except ImportError: # django < 1.5
from django.contrib.auth.models import User
else:
User = get_user_model()
Run Code Online (Sandbox Code Playgroud)
现在,
queryset = User.objects.all()
Run Code Online (Sandbox Code Playgroud)
- 要么 -
如果你只使用django 1.5,你可以简单地做:
from django.contrib.auth import get_user_model
queryset = get_user_model().objects.all()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2039 次 |
| 最近记录: |