python - Django: 'long' 对象不可迭代

标签 python django

  1. 我有一个模型

    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
    
  2. views.py:

    def tourney_view(request, offset):
        # .....
        if (offset):
            selected_tournament =  tournaments.objects.get(id=offset)
        return render_to_response('tournament.html', {'tournament': selected_tournament})
    
  3. 在“tournament.html”模板中,我尝试循环total_rounds:

    {% for q in tournament.get_total_rounds_count%}
    {% endfor %}
    

出现错误:“长”对象不可迭代 为什么?我的字段是 IntegerField,我只是尝试循环整数值,但得到“不可迭代”

最佳答案

您可以使用以下代码片段:http://djangosnippets.org/snippets/1357/

或者定义Tournament.get_total_rounds,它返回range(get_total_rounds_count)

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

相关文章:

python - 根据列表索引在 for 循环中拆分列表

python - django UnitTest Case(模拟)中的假子函数

sql - 为什么我无法删除具有相关对象的模型实例?

python - django flatpages 和 i18n

python - 如何将2个不同维度的numpy数组相乘

python - 将图例中的 Matplotlib 矩形更改为圆形

python - django 发送电子邮件 - 在发送电子邮件之间安装时间延迟

python - Pdb 不会在断点处停止

django - 为什么我在 Google App Engine *开发* 控制台中看不到任何数据?

django - 为非管理员前端用户创建类似 django 管理员的操作 - 如何