我正在尝试使用django创建关注者系统,并遇到上述错误
代码
models.py
class Profile(models.Model):
user=models.OneToOneField(User, on_delete=models.CASCADE)
image=models.ImageField(default='default.jpg',upload_to='profile_pics',blank=True)
description=models.TextField(max_length=200, blank=True)
following = models.ManyToManyField(User, related_name='followed_by', blank=True)
def __str__(self):
return f'{self.user.username} Profile'
def saveimg(self):
super().save()
img=Image.open(self.image.path)
if img.height>300 or img.width>300:
output_size=(300,300)
img.thumbnail(output_size)
img.saveimg(self.image.path)
views.py
def follow_user(request, username):
creator = get_object_or_404(Profile, user__username__iexact=username)
is_followed=False
if request.user.profile.objects.filter(following=creator).exists():
request.user.profile.objects.remove(following=creator)
is_followed=False
else:
creator.profile.add(following=creator)
is_liked=True
context={
'creator':creator,
'is_followed': request.user.profile.filter(following=creator).exists(),
}
return HttpResponseRedirect(home)
urls.py
path('user/<str:username>/follow', views.follow_user,name='follow_user'),
回溯
跟踪:
文件“ C:\ Users \ Mustafa Lakhani \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ django \ core \ handlers \ exception.py“ 在内部 34. response = get_response(request)
文件“ C:\ Users \ Mustafa Lakhani \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ django \ core \ handlers \ base.py“ 在_get_response中 126. response = self.process_exception_by_middleware(e,request)
文件“ C:\ Users \ Mustafa Lakhani \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ django \ core \ handlers \ base.py“ 在_get_response中 124. response = wrapd_callback(request,* callback_args,** callback_kwargs)
follow_user中的文件“ D:\ sb \ blog \ views.py” 186. if request.user.profile.objects.filter(following = creator).exists():
文件“ C:\ Users \ Mustafa Lakhani \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ django \ db \ models \ manager.py“ 在获取中 176.提高AttributeError(“无法通过%s实例访问管理器”%cls。名称)
异常类型:/ user / mustafalakhani / follow处的AttributeError 异常值:无法通过配置文件实例访问管理器