2013-06-25 4 views
1

Когда я используюКак я могу импортировать модели пользователя в Django и выбрать все объекты

from django.conf import settings 

в моих взглядах DjangoRestFramework,

class UserList(ListCreateAPIView): 
    queryset = settings.AUTH_USER_MODEL.objects.all() 
    serializer_class = UserSerializer 

мой, я получаю ошибку

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' 

ответ

5

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() 

Теперь

queryset = User.objects.all() 

- ИЛИ -

, если вы используете только Джанго 1.5, вы можете просто сделать:

from django.contrib.auth import get_user_model 

queryset = get_user_model().objects.all()