我想在我的社交媒体网站的主页中创建一个喜欢的功能。我正在使用 ManyToManyField 在特定帖子上存储喜欢,如 models.py 所示。在我的主页中,我有帖子列表,我想检查当前登录用户是否已经喜欢的帖子的天气。
在我的 views.py 中我使用
post = Posts.objects.filter('likes')
if post.likes.filter(id=request.user.id).exists():
模型.py
class Posts(models.Model):
title = models.CharField(max_length=250, blank=False)
content = models.CharField(max_length=15000,
help_text="Write Your thought here...")
likes = models.ManyToManyField(User, blank=True)
视图.py
def home(request):
post = Posts.objects.filter('likes')
print('Thats just Test', post)
if post.likes.filter(id=request.user.id).exists():
print("Already Exixts")
is_liked = False
context = {
'all_posts': all_posts,
'is_liked': is_liked,
}
return HttpResponse(template.render(context, request))
hometemplte.html:(只喜欢按钮)
<form action="{% url 'like_post' %}" method="POST">
{% csrf_token %}
{% if is_liked %}
<button type="submit" name="like" value="{{ post.id }}" class="btn upvote liked">Liked</button>
{% else %}
<button type="submit" name="like" value="{{ post.id }}" class="btn upvote">Upvote</button>
{% endif %}
</form>
相关分类