如何在Django模板中访问字典元素?

如何在Django模板中访问字典元素?,第1张

如何在Django模板中访问字典元素?

为了回应/扩展Jeff的评论,我认为你应该针对的只是Choice类中的一个属性,该属性计算与该对象关联的投票数:

    class Choice(models.Model):        text = models.CharField(max_length=200)         def calculateVotes(self): return Vote.objects.filter(choice = self).count()        votes = property(calculateVotes)

然后在模板中,你可以执行以下 *** 作:

    {% for choice in choices %} {{choice.choice}} - {{choice.votes}} <br />    {% endfor %}

模板标签,恕我直言,此解决方案有些过分,但这也不是一个糟糕的解决方案。Django中模板的目标是使你与模板中的代码隔离,反之亦然。

我会尝试上述方法,并查看ORM生成的SQL,因为我不确定它是否会预缓存属性并为该属性创建子选择,还是会迭代/启用-需求运行查询以计算投票数。但是,如果它产生了残酷的查询,你总是可以使用自己收集的数据填充视图中的属性。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5059502.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存