I'm trying to make each post from all users have a friend request button for each specific user who uploaded post on homepage. This code below is what I have tried but friend request button is not displayed on each post. I have also tried using a boolean field but still same problem. What could I have been doing wrong? class Profile(models.Model): user = models.OneToOneField(settings.AUTH_USER_MODEL,on_delete=models.CASCADE,blank=True,null=True) friends = models.ManyToManyField('Profile', related_name="my_friends",blank=True) class Post(models.Model): poster_profile = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE, blank=True,null=True) caption = models.TextField(blank=True, null=True) class FriendRequest(models.Model): from_user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE, related_name='from_user') to_user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE, related_name='to_user') def ForYouView(request): page_title = "For You" poster_profile = Post.objects.all() p = Profile.objects.exclude( Q(user=request.user)).order_by('-id') all_profile_users = [] button_status_list = [] for user_obj in p: u = user_obj.user all_profile_users.append(u) friends = Profile.objects.filter(user=request.user, friends__id=user_obj.id).exists() button_status = 'none' if not friends: button_status = 'not_friend' if len(FriendRequest.objects.filter( from_user=request.user).filter(to_user=u)) == 1: button_status = 'cancel_request_sent' if len(FriendRequest.objects.filter( from_user=u).filter(to_user=request.user)) == 1: button_status = 'follow_back_request' button_status_list.append(button_status) context = { 'page_title': page_title, 'poster_profile': poster_profile, 'profile_and_button_status': zip(p,button_status_list), 'u': all_profile_users, } return render(request, 'foryou.html', context) {% if poster_profile %} {% for user in poster_profile %} <div>{{ user.poster_profile }}</div> {% if not user == request.user %} {% for user in profile_and_button_status %} {% if user.1 == 'not_friend' %} <a href="" class="friend-request"> <button type="button" class="btn"> Follow </button> </a> {% elif user.1 == 'cancel_request_sent' %} <a href="" class="friend-request"> <button type="button" class="btn"> Cancel </button> </a> {% elif user.1 == 'follow_back_request' %} <a href="" class="friend-request"> <button type="button" class="btn"> Follow back </button> </a> {% else %} <a href="" class="friend-request"> <button type="button" class="btn"> Following </button> </a> {% endif %} {% endfor %} {% endif %} <div>{{ user.caption }}</div> {% endfor %} {% endif %} I tried using a boolen True or False in the FriendRequest Model but still do not solve the problem Continue reading...