我有一个模型

class tournaments(models.Model):
    # ....
    total_rounds = models.IntegerField(max_length=11, blank=True, null=True)
    # ....

    def get_total_rounds_count(self):
        return self.total_rounds

视图.py:
def tourney_view(request, offset):
    # .....
    if (offset):
        selected_tournament =  tournaments.objects.get(id=offset)
    return render_to_response('tournament.html', {'tournament': selected_tournament})

在'tournament.html'模板中,我试图循环遍历所有回合:
{% for q in tournament.get_total_rounds_count%}
{% endfor %}

并得到错误:“long”对象不可iterable
为什么?我的字段是integer field,我只是试图循环整数值,但是得到“不可迭代”

最佳答案

您可以使用此片段:http://djangosnippets.org/snippets/1357/
或者定义Tournament.get_total_rounds返回range(get_total_rounds_count)

关于python - Django:“长”对象不可迭代,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11383336/

10-12 16:39