2013-06-25 1 views
1

Lorsque j'utiliseComment puis-je importer le modèle utilisateur dans Django et sélectionnez tous les objets

from django.conf import settings 

dans mes vues de DjangoRestFramework,

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

mon retour, je reçois l'erreur

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' 

Répondre

5

settings.AUTH_USER_MODEL est une chaîne. Ce n'est pas un objet modèle.

Vous devez faire quelque chose comme ceci:

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

Maintenant,

queryset = User.objects.all() 

- OU -

si vous utilisez seulement django 1.5, vous pouvez simplement faire:

from django.contrib.auth import get_user_model 

queryset = get_user_model().objects.all() 
Questions connexes