[Python Django] 장고 숫자(실수, 정수) 1000단위 콤마(,) 구분

2020. 1. 13. 23:05Python/ㄴ Django

1. settings.py 파일 설정

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.humanize' # << 추가
]

django.contrib.humanize를 장고 프로젝트의 settings.py에 추가한다.
(INSTALLED_APPS를 추가 할 때 ',' 를 이용해서 각 앱을 구분해주는것을 꼭 해주어야한다.
그렇지않을경우 에러가 발생한다.)

2. HTML 템플릿 수정

{% load humanize %}

해당 코드를 1000단위 콤마를 사용 할 HTML 파일의 상단에 추가한다.
만약 {% extends ~ %} 코드를 이용해 다른 HTML파일(레이아웃)을 로드하고있는 HTML 파일일 경우 {% extends ~%} 구문 다음 줄에 {% load humanize %}를 추가해주도록 한다

{% extends 'exchange/layout.html' %}
{% load humanize %}

이런식으로 해주어야 오류가 발생하지 않는다.

3. intcomma 추가

<td>{{coin.price|intcomma}}$</td>
<td>{{coin.marketcap|intcomma}}$</td>
<td>{{coin.volume|intcomma}}$</td>

위의 예제처럼 |intcomma를 구분할 숫자형 object 뒤에 추가해주면 1000단위 마다 콤마로 구분되는것을 확인할 수 있다.

intcomma를 이용하여 숫자 데이터가 1000단위로 구분된 모습

1 2 3