我试图在浮动中添加逗号,以便在GAE上显示给我的应用程序的最终用户。这些数字来自json,是10项查询的一部分,每次查询2次(每页查看20个数字)。例如。
"total_reach": 276160.0, "total_reach": 500160.0
我使用的是python GAE SDK 1.7.3模板系统,只想用逗号显示最终用户的号码,例如:276,160和500,160。注意,我使用默认的webbapp2和标准模板(来自google.appengine.ext.webapp导入模板),据我所知,它基于Django。
Django floatformat很好地摆脱了小数,但现在我需要添加逗号。 Django的人性化使用intcomma过滤器看起来很完美。但是,我根本无法弄清楚如何启用它。我怀疑它很简单,而且我是密集的(而且我是愚蠢的蟒蛇) - 但我没有想法。
虽然我尝试了一系列的事情,但是最新的和有希望的是(基于我对the source的理解):
from google.appengine.ext.webapp.template import register_template_library
register_template_library('django.contrib.humanize.templatetags.humanize')
给了我以下500:
No module named django.contrib.humanize.templatetags
但它似乎在源头。
我非常茫然。我已经四处搜索,发现像this这样的项目,它们似乎没有用,似乎是针对webapp(而不是webapp2)。帮助和感谢!
更新:
无法使用settings.py方法进行操作。最后,我自己解决了这个问题。请参阅下面的我的功能,但不是理想的解决方案。
答案 0 :(得分:0)
我猜您没有在django.contrib.humanize
文件中将INSTALLED_APPS
添加到settings.py
。
答案 1 :(得分:0)
无法使用settings.py方法实现目标。最后我使用了variant of this answer。我复制了source code from here,用
替换了humanize.py文件顶部的各种Django导入from google.appengine.ext import webapp
register = webapp.template.create_template_register()
然后我添加到我的main.py:
template.register_template_library('tags.humanize')
然后在模板中,我只是按预期添加了过滤器(例如item.count | intcomma)。我认为这不是“最佳实践”,但它确实有效。