我在Django Admin中注册了我的模型,但是Integer字段(它们是只读的)显示没有千位分隔符;这可以在管理员列表视图中以及管理员模型表单中进行。
我正在使用Django 1.11.9,使用Python 3.6。
在我的' settings.py'我有以下内容:
USE_I18N = False
USE_L10N = False
DECIMAL_SEPARATOR = ','
THOUSAND_SEPARATOR = '.'
USE_THOUSAND_SEPARATOR = True
NUMBER_GROUPING = 3
django-admin有没有办法将千位分隔符应用到我的只读字段?
- 编辑 -
此similar question(来自2015年9月)没有一个自动适用于所有字段的简单答案。
答案 0 :(得分:0)
我没有在django-admin中正常工作。由于我没有将admin用于面向用户的网站,因此我现在可以用逗号而不是点来格式化数字。
但是,在其他模板中,我根据django documentation使用自定义模板标记。
from django import template
from django.utils.encoding import force_text
register = template.Library()
@register.filter
def intdot(val_orig):
"""
Similar to 'django.contrib.humanize.intcomma', but with dots.
"""
val_text = force_text(val_orig)
try:
val_new = int(val_text)
except ValueError:
return ''
val_new = '{:,d}'.format(val_new)
val_new = val_new.replace(',', '.')
return val_new