Количество Likes не увеличивается в шаблоне, но работает в админке

Я следую руководству на youtube, чтобы добавить кнопку "нравится" в приложение "Блог", но количество лайков не увеличивается в шаблоне. Но оно увеличивается, когда я выделяю пользователя и нажимаю сохранить в админке. То есть в админке все работает нормально, а в шаблоне нет.

Как я могу установить это?

модель:

class Photo(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    category = models.CharField(max_length=30,null=True, blank=False)
    image = models.ImageField(null=False, blank=False)
    description = models.TextField(null=True)
    date_added = models.DateTimeField(auto_now_add=True)
    likes = models.ManyToManyField(User, related_name='blog_posts')

    def total_likes(self):
        return self.likes.count()

    def __str__(self):
        return str(self.category)

вид:

def like(request, pk):
    post = get_object_or_404(Photo, id=request.GET.get('post_id'))
    post.Likes.add(request.user)   

    return HttpResponseRedirect(reverse('view', args=[str(pk)]))

def viewPhoto(request, pk):

    post = get_object_or_404(Photo, id=pk)

    photo = Photo.objects.get(id=pk)

    stuff = get_object_or_404(Photo, id=pk)

    total_likes = stuff.total_likes()

    return render(request, 'photo.html', {'photo': photo, 'post': post, 'total_likes': 
    total_likes})

шаблоны:

     <form action="{% url 'Photo' photo.id %}" method="POST">
      {% csrf_token %}
      {{ total_likes }}
      <button type="submit", name="post_id" value="{{ post.id }}">Touch</button>

 </form>

урлы:

path('', views.login, name='login'),
path('home', views.home, name='home'),
path('view/<str:pk>/', views.viewPhoto, name='Photo'),
path('post/create', views.PostCreativeView.as_view(), name='post_create'),
path('register', views.register, name='register'),
path('comment/<str:pk>/', views.comment, name='comment'),
path('like/<str:pk>/', views.like, name='like_post'),

Ну очень просто получить количество понравившихся объектов в вашей форме, просто сделав что-то вроде этого :




  <form action="{% url 'Photo' photo.id %}" method="POST">
      {% csrf_token %}
      {{ post.likes.count }} # this would count and give you the total number of likes
      <button type="submit", name="post_id" value="{{ post.id }}">Touch</button>

 </form>
Вернуться на верх