gpt4 book ai didi

python - 如何在 django 中重定向时发送字典或数据?

转载 作者:太空宇宙 更新时间:2023-11-03 20:22:55 27 4
gpt4 key购买 nike

我制作了一个网络应用程序,我可以在其中发布图像,其他用户可以点赞。但是,如果他已经喜欢该帖子,那么它会是红色的,再次单击它,它就会与该帖子不同,如果用户不喜欢该帖子,那么它将是绿色的,点击按钮就会喜欢该帖子。我可以喜欢和不喜欢功能,但我无法根据逻辑更改按钮颜色。在 django 中,我们无法在 redirect('urlname') 中传递字典。那么有没有可能的方法根据给定的逻辑使我的按钮变成绿色或红色?代码

这是 HTML 文件

{%  extends 'navbar-footer.html'%}
{% block content %}
<style>
.btn-like{
color: green;
}
.btn-dislike{
color: red;
}
</style>
<h1>{{button}}</h1>
<h4>This is item number {{item.id}}</h4>
<h4>{{ item.title }}</h4>
<h4>{{ item.body }}</h4>
<button type="button" class="btn {{button}}" onclick="javascript:{document.getElementById('increase_like').submit()}">Like {{item.likes}}</button>
<form action="{%url 'increase_like' item.id%}" method="POST" id='increase_like' >
{% csrf_token %}
<input type="hidden" name="" id="">
</form>
<img src="{{item.image.url}}" alt="">
{% for user in voter.voter.all %}
<h1>{{user.username}}</h1>
{% endfor %}
{% endblock %}

View .py

def likes(request, item_id):
voter_id = Vote.objects.filter(item_product_id=item_id, voter=request.user)
if voter_id.exists():
voter_obj = get_object_or_404(Vote, item_product_id=item_id)
voter_obj.voter.remove(request.user)
item = get_object_or_404(Item_Product, pk=item_id)
item.likes = voter_obj.voter.count()
item.save()
voter_obj.save()
return redirect('/products/item_Products/'+str(item_id))
elif voter_id.exists() == False:
voter_obj = get_object_or_404(Vote, item_product_id=item_id)
voter_obj.voter.add(request.user)
item = get_object_or_404(Item_Product, pk=item_id)
vote_count = item.likes
item.likes = voter_obj.voter.count()
item.save()
voter_obj.save()
return redirect('/products/item_Products/'+str(item_id))

最佳答案

做这样的事情


if voter_id.exists():
# Delete the voter object or remove vote
messages.info("disliked")
else:
# Create voter object or add vote
messages.info("liked")
return redirect("YOUR_REDIRECT_URL")

关于python - 如何在 django 中重定向时发送字典或数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58042277/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com