Home > other >  I want to check request.user in profile.favourite and followUser.folpr if an object exists delete or
I want to check request.user in profile.favourite and followUser.folpr if an object exists delete or

Time:10-12

I want to check request.user in profile.favourite and followUser.folpr if an object exists delete or add but check don't work only add and create work

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    favourite = models.ManyToManyField( User, related_name='favouriteUser', default=None, blank=True)
    avatar = models.ImageField( upload_to=user_directory_path, default='users/avatar.png')
    bio = models.TextField(max_length=5500, blank=True)





class followUser(models.Model):
    folPr = models.ForeignKey(Profile, related_name='followfp',  on_delete=models.CASCADE, default=None, blank=True)
    follUser = models.ForeignKey(User, related_name='followidf', on_delete=models.CASCADE, default=None, blank=True)



@ login_required
def favourite_add_user(request, id):
    post = get_object_or_404(Profile, id=id)
    if post.favourite.filter(id=request.user.id).exists():
        post.favourite.remove(request.user)
        followUser.objects.get(user=request.user,folPr=post ).delete()
    else:
        post.favourite.add(request.user)
        followUser.objects.create(follUser=request.user,folPr=post ).save()
    return HttpResponseRedirect(request.META['HTTP_REFERER'])

CodePudding user response:

change to this

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    follow = models.ManyToManyField( User, related_name='followUser', default=None, blank=True)
    avatar = models.ImageField( upload_to=user_directory_path, default='users/avatar.png')
    bio = models.TextField(max_length=5500, blank=True)
 
 
class followUser(models.Model):
    profiles = models.ForeignKey(Profile, related_name='followfp',  on_delete=models.CASCADE, default=None, blank=True)
    avatar = models.ForeignKey(User, related_name='followidf', on_delete=models.CASCADE, default=None, blank=True)
 



@ login_required
def follow_add_user(request, id):
    post = get_object_or_404(Profile, id=id)
    if post.follow.filter(id=request.user.id).exists():
        post.follow.remove(request.user)
        followUser.objects.get(avatar=request.user,profiles=post ).delete()
    else:
        post.follow.add(request.user)
        followUser.objects.create(avatar=request.user,profiles=post ).save()
    return HttpResponseRedirect(request.META['HTTP_REFERER'])
  • Related