Я хочу сделать кнопку лайков, когда одним нажатием кнопки свойство лайков модели увеличивается на единицу.Модель выглядит следующим образом:
class Post(models.Model):
author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
title = models.CharField(max_length = 200)
text = models.TextField()
created_date = models.DateTimeField(default = timezone.now)
likes = models.IntegerField(default=0)
tags = models.CharField(max_length = 50, default = '' )
def process_likes(self):
print(self.likes)
self.likes += 1
def split_tags(self):
return self.tags.split()
def get_absolute_url(self):
return reverse('blog:post_list')
def __str__(self):
return self.title
Функция из представления, в котором я вызываю метод, выглядит следующим образом:
def print_hi(request, pk):
print('Hi there!')
post = get_object_or_404(Post, pk=pk)
post.process_likes()
return redirect('blog:post_detail', pk=post.pk)
URL-адрес, соответствующий этой функции представления:
path('print/<int:pk>', views.print_hi, name='print_hi'),
И якорь, в котором я вызываю URL для вызова функции:
<a href="{% url 'blog:print_hi' pk=post.pk %}" class="btn">Soy un botón</a>
Метод process_likes отвечает за приращение счетчика лайков, но когда я вызываю функциюнажатие кнопки не увеличивает счет?Как я могу решить это?