我有一套结果这个结果有一个喜欢 ManyToManyField属性,该属性存储所有具有相同结果的用户
我想归档的是在结果中添加一个额外的时间属性调用isLiked
因此,稍后在模板上,我可以向html添加一个数据属性,指示请求的用户已经喜欢了
我正在尝试用这种方法:
视图.py
def list_consequences(request, proponsal_id):
try:
consequences: [Consequence] = Consequence.objects.filter(of_proponsal=proponsal_id)
user_likes =request.user.likes_consequences.get_queryset()
union = consequences | user_likes
for consequence in union:
aux =consequences.get(pk=consequence.pk)
aux.isLiked=True
pros: Consequence = consequences.filter(efecto=Consecuencia.PRO)
against: Consequence = consequences.filter(efecto=Consecuencia.AGAINST)
template = loader.get_template('participation/consequences.html')
context = {
'pros': pros,
'against': against,
'is_user_authenticated': str(request.user.is_authenticated).lower(),
}
return HttpResponse(template.render(context, request))
except Consequence.DoesNotExist:
raise Http404("The consequence with id doesn't exist")
所以在模板后面我可以这样做:
后果.html
...
{% for pro in pros %}
<button data-is-liked={{pro.isLiked}}> icon</button>
{% endfor %}
...
有人知道我怎么做吗
提前谢谢
Django版本:2.0
Python:3.6.5版
我终于这样解决了:
相关问题 更多 >
编程相关推荐