def like(request):
"""
kullan?c? be?endi?inde vya be?enmedi?inde ekrandaki skoru otomatik
update eder
"""
id = request.GET.get("id", default=None)
like = request.GET.get("like")
obj = get_object_or_404(Post, id=int(id))
if like == "true":
# f objesi veri tabanindaki ilgili sutunun degerini cekerek
# atama yapmak yerine arttirma veya azaltma yapmamizi saglar.
obj.score = F("score") + 1
obj.save(update_fields=["score"])
elif like == "false":
obj.score = F("score") - 1
obj.save(update_fields=["score"])
else:
return HttpResponse(status=400)
obj.refresh_from_db()
return JsonResponse({"like": obj.score, "id": id})
评论列表
文章目录