键入对象';用户';没有属性';对象';(抽象用户)python
应用程序名称后端 用户对象返回错误:键入对象';用户';没有属性';对象';(抽象用户)python,python,django,python-3.x,django-models,django-rest-framework,Python,Django,Python 3.x,Django Models,Django Rest Framework,应用程序名称后端 用户对象返回错误: users = User.objects.filter(fb_userid=fb_user_id) AttributeError: type object 'User' has no attribute 'objects' 型号.py from django.db import models from django.contrib.auth.models import AbstractUser class User(AbstractUser):
users = User.objects.filter(fb_userid=fb_user_id)
AttributeError: type object 'User' has no attribute 'objects'
型号.py
from django.db import models
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
fb_userid = models.CharField(max_length=256)
avatar = models.ImageField(upload_to='avatars/', blank=True, null=True)
from backend.models import *
def fb_login(request):
# permission_classes = (permissions.AllowAny,)
if request.method == 'POST':
if 'fb_user_id' not in request.data:
return Response({'error':'missing fb_user_id'}, status=status.HTTP_404_NOT_FOUND)
fb_user_id = str(request.data['fb_user_id'])
users = User.objects.filter(fb_userid=fb_user_id)
if users.count() == 0:
user, created = User.objects.get_or_create(username=fb_user_id, email='fb@fb.net')
if created:
user.save()
else:
user = users[0]
token = Token.objects.get_or_create(user=user)[0]
# Likes
likeIds = []
likes = ImageLike.objects.filter(user_id=user.id)
for like in likes:
likeIds.append(like.image.id)
# Saved Places
savedIds = []
saved = SavedRestaurants.objects.filter(user_id=user.id)
for save in saved:
savedIds.append(save.restaurant.id)
jsonData = { 'token': token.key, 'saved': savedIds, 'likes': likeIds }
return Response(jsonData)
AUTH_USER_MODEL = 'backend.User'
视图.py
from django.db import models
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
fb_userid = models.CharField(max_length=256)
avatar = models.ImageField(upload_to='avatars/', blank=True, null=True)
from backend.models import *
def fb_login(request):
# permission_classes = (permissions.AllowAny,)
if request.method == 'POST':
if 'fb_user_id' not in request.data:
return Response({'error':'missing fb_user_id'}, status=status.HTTP_404_NOT_FOUND)
fb_user_id = str(request.data['fb_user_id'])
users = User.objects.filter(fb_userid=fb_user_id)
if users.count() == 0:
user, created = User.objects.get_or_create(username=fb_user_id, email='fb@fb.net')
if created:
user.save()
else:
user = users[0]
token = Token.objects.get_or_create(user=user)[0]
# Likes
likeIds = []
likes = ImageLike.objects.filter(user_id=user.id)
for like in likes:
likeIds.append(like.image.id)
# Saved Places
savedIds = []
saved = SavedRestaurants.objects.filter(user_id=user.id)
for save in saved:
savedIds.append(save.restaurant.id)
jsonData = { 'token': token.key, 'saved': savedIds, 'likes': likeIds }
return Response(jsonData)
AUTH_USER_MODEL = 'backend.User'
设置.py
from django.db import models
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
fb_userid = models.CharField(max_length=256)
avatar = models.ImageField(upload_to='avatars/', blank=True, null=True)
from backend.models import *
def fb_login(request):
# permission_classes = (permissions.AllowAny,)
if request.method == 'POST':
if 'fb_user_id' not in request.data:
return Response({'error':'missing fb_user_id'}, status=status.HTTP_404_NOT_FOUND)
fb_user_id = str(request.data['fb_user_id'])
users = User.objects.filter(fb_userid=fb_user_id)
if users.count() == 0:
user, created = User.objects.get_or_create(username=fb_user_id, email='fb@fb.net')
if created:
user.save()
else:
user = users[0]
token = Token.objects.get_or_create(user=user)[0]
# Likes
likeIds = []
likes = ImageLike.objects.filter(user_id=user.id)
for like in likes:
likeIds.append(like.image.id)
# Saved Places
savedIds = []
saved = SavedRestaurants.objects.filter(user_id=user.id)
for save in saved:
savedIds.append(save.restaurant.id)
jsonData = { 'token': token.key, 'saved': savedIds, 'likes': likeIds }
return Response(jsonData)
AUTH_USER_MODEL = 'backend.User'
用户对象返回错误:
users = User.objects.filter(fb_userid=fb_user_id)
AttributeError: type object 'User' has no attribute 'objects'
users=User.objects.filter(fb\u userid=fb\u User\u id)
AttributeError:类型对象“用户”没有属性“对象”请尝试设置
AUTH_USER_MODEL = 'backend.user'.
将您的
AUTH\u USER\u MODEL
从settings.py
指向您的app.CustomUserModel
在视图中从何处导入USER
?从.models从后端导入USER.models导入*后端.models中有什么?任何用户(直接或间接)?使用python manage.py shell
打开交互式shell,并使用dir(User)
检查User
类。检查用户
类是否指向您的用户
模型类。@我的代码在shell中工作,但在djnago web中我无法导入用户模型您是否尝试通过shell填充用户模型?