0%

Django Template 에서 Split 기능 사용하는 방법

참고 : https://docs.djangoproject.com/en/2.2/howto/custom-template-tags/


Django 2.2 기준

Django Template은 Split 기능을 갖추고 있지 않기 때문에, templatetags 패키지를 사용해야합니다.

  1. 본 앱 (manage.py가 있는 디렉토리)이 아닌, 추가 앱을 작성해야합니다
  2. 추가로 작성된 앱에서 templatetags 패키지를 생성합니다.
    (이 때, templatetags 패키지는 반드시, views.py, models.py 와 같은 레벨이 되어야합니다.)
  3. 파일명은 자유롭게 작성해야하지만, 반드시 templatetags 패키지 안에 생성되어야합니다.
    (이 경우에는, split.py 라는 파일을 생성하여 커스텀 Split 모듈을 생성합니다)
  4. 본 앱의 settings.py 의 INSTALLED_APPS 부분에 반드시 추가로 생성한 앱을 추가합니다.
  5. 아래와 같이 태그를 사용하여, 커스텀 Split 기능을 원하는 필요한 영역에서 사용하면 됩니다.
    https://stackoverflow.com/questions/41932634/how-to-split-the-string-in-django-template?answertab
    1
    2
    3
    4
    5
    6
    {% load split %}
    {% with form.instance.skills|split:"," as skills %}
    {% for skill in skills %}
    {{ skill }}
    {% endfor %}
    {% endwith %}