2013-06-25 1 views
1

내 DjangoRestFramework 뷰에서어떻게 장고의 사용자 모델을 가져오고 모든 개체를 선택할 수 있습니다

from django.conf import settings 

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() 
관련 문제