jinja는 서버에서 보낸 데이터를 html 문서에서 나타낼 때 쓰이는 일종의 템플릿 언어다. 문법은 전반적으로 파이썬과 유사한 부분이 많기 때문에 사용법을 어렵지 않게 익힐 수 있다.
오늘은 for문을 사용하다가 break를 사용할 일이 생겨서 사용법을 정리해 본다. break는 보통 for문과 같은 반복문에서 중도 탈출할 때 사용되는 문법이다. 이 글을 읽는 분들은 break의 용도는 알고 계실 것이라 생각하기에 자세한 설명은 생략하겠습니다.
jinja2에서 break 사용하기
우선 jinja2에서 break를 사용하려면 extension을 추가해줘야 사용할 수 있다. flask 프레임워크를 사용하고 있다면 app = Flask(__name__)과 같은 코드가 파이썬 문서 상단에 있을 것이다. 그 코드 아래에 다음과 같은 코드를 추가해줘야 한다.
app.jinja_env.add_extension('jinja2.ext.loopcontrols')
위 코드를 추가했다면 이제 html 문서에서 다음과 같은 방식으로 break를 사용할 수 있다.
{% for temp in data %}
{% if temp['nation'] == 'korea' %}
<p>{{ temp['nation'] }}</p>
{% break %}
{% endif %}
{% endfor %}
각자의 상황에 맞게 for문 내에 break를 넣어주면 된다.
'Dev > python' 카테고리의 다른 글
[pyside6] QLabel에 이미지 넣을 때 종횡비(aspect ratio) 설정 (2) | 2022.02.27 |
---|---|
[pyside6] 위젯 내 글자 크기를 변경하고 싶을 때 (0) | 2022.02.26 |
[pyside6] QThreadPool을 이용해서 몇 개의 스레드가 활성화되어 있는지 확인하기 (1) | 2022.02.25 |
[flask+jinja2] 서버에서 받은 html 요소가 html 문서에서 제대로 표현되게 하려면? (0) | 2022.02.06 |
[python] SyntaxError: Non-ASCII character '\xec' 에러 해결법 (0) | 2022.01.14 |
[PySide6] DeprecationWarning: Fuction: 'globalPos() const' is marked as deprecated 경고 메시지 출력 안되게 하기 (0) | 2021.11.29 |
[python] 파이썬 에러 종류 정리(SyntaxError, TypeError, IndexError 등) (2) | 2021.06.30 |
[pyqt5] 프로그램창을 항상 가장 위에 있게 하면서 동시에 타이틀 바도 없게 하려면? (3) | 2021.06.09 |