如何用“变量”递增变量;如果;在django模板中?
我试图在Django模板中用“if”增加一个变量,我已经在这个站点上尝试了所有的建议,但是没有一个解决了我的问题。 这里有views.py如何用“变量”递增变量;如果;在django模板中?,django,django-models,django-forms,Django,Django Models,Django Forms,我试图在Django模板中用“if”增加一个变量,我已经在这个站点上尝试了所有的建议,但是没有一个解决了我的问题。 这里有views.py class IndexView(generic.ListView): template_name = 'home/index.html' context_object_name = 'problemes' def get_context_data(self, **kwargs): context_data = super().get_context
class IndexView(generic.ListView):
template_name = 'home/index.html'
context_object_name = 'problemes'
def get_context_data(self, **kwargs):
context_data = super().get_context_data(**kwargs)
context_data['problemes'] = Probleme.objects.all()
context_data['commentaires'] = Commentaire.objects.all()
return context_data
def get_queryset(self):
result_list = self.get_context_data
return result_list
和index.html
....
{% for problem in problemes %}
{% with number_comment= 0%}
{% for comment in commentaires %}
{% if comment.probleme.id == problem.id %}
{% number_comment ++ %}
{% endif %}
{% endfor %}
<tr data-status="pagado">
<td>
<div class="votes">
<div class="mini-counts"><span title="74 votes">74</span></div>
<div>votes</div>
</div>
</td>
<td>
<div class="status answered-accepted" title="one of the answers was accepted as the correct answer">
<div class="mini-counts"><span title="2 answers">{{ number_comment }}</span></div>
<div>answers</div>
</div>
{% endwith %}
....
。。。。
{%用于问题中的问题%}
{编号为0%的%u注释=0%}
{%用于评论中的评论%}
{%if comment.probleme.id==problem.id%}
{%number_comment++%}
{%endif%}
{%endfor%}
74
投票
{{number_comment}}
答案
{%endwith%}
....
如果您可以在index.html中直接引用您的编号\u注释
,则可以使用add
模板标记来增加注释。当然,这只会增加模板中的数字,而不会保存到数据库中
{{ number_comment|add:"1" }}
你是从哪里得到这个号码的?是您的评论模型的一个字段吗?在这种情况下,您应该使用commment.number\u comment.no访问它,它不是commentaire的一个字段,而是一个变量,当我探索一个带有条件的项目列表时,如果某个项目。。。(带模板)有什么帮助吗!但是您应该将此变量从视图传递到模板。不能在模板中实例化变量。当然,您可以使用JavaScript来实现,但这是完全不同的。例如,您可以在视图中实例化变量,就像上下文数据['number\u comment']=0一样。我修复了这个问题,在我的模型中创建了一个类计数器,它有两个函数“increment”和“set_to_zero”,当我在上下文中传递它并在模板中使用它之后,你认为它是好的解决方案还是坏的?