Jinja2를 사용할 때 원래는 break문을 기본적으로 사용할 수 있을 것 같지만, 전혀 그렇지 않습니다... 허허...
보통은 break는 기본으로 제공하지만 jinja2는 예외더랍니다.
따라서 추가적인 작업이 필요합니다.
01. jinja2.ext.loopcontrols 적용
Jinja2에서 'jinja2.ext.loopcontrols'를 적용해주면 추가적인 작업 없이 {% break %}를 사용할 수 있습니다.
# ============================== # flask_folder/run.py (실행파일) # ============================== import sys from app import app app.run(host='0.0.0.0', port=80, threaded=True)
위와 같이 run.py가 작성되어 있다고 가정합니다.
그러면 이제 jinja2.ext.loopcontrols를 적용해주어야 하는데, 이는 다음과 같이 적용해줄 수 있습니다.
# ============================== # flask_folder/app/__init__.py # ============================== from flask import Flask, request, session, g, redirect, url_for, abort, render_template # Configurations app.config.from_object('config') # Jinja2 environment add extension app.jinja_env.add_extension('jinja2.ext.loopcontrols')
반드시 위와 같은 방법으로 추가해주지 않아도 되지만, 저는 이 방법으로 작업을 수행했습니다.
02. {% break %} 사용 예제
아래는 {% break %}문을 사용하는 예제 입니다.
{% for m in menu %} {% if m.case in cases %} <li class="on"> {{ m.data }} </li> {% else %} {% break %} {% endif %} {% endfor %}
'WEB PROGRAMMING > Jinja2' 카테고리의 다른 글
[Jinja2] For 문 사용하는 방법 (0) | 2019.02.19 |
---|---|
[Jinja2] 배열(리스트) 인덱스 사용하는 방법 (0) | 2019.02.06 |