๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“๐Ÿ’ช/Django

ํ…œํ”Œ๋ฆฟ ์–ธ์–ด, ํ…œํ”Œ๋ฆฟ ์ƒ์†

by ์ˆ˜์จ”์•™ 2022. 9. 26.

ํ…œํ”Œ๋ฆฟ ๋ณ€์ˆ˜

: ์šฐ๋ฆฌ๊ฐ€ ์ง€์ •ํ•œ ๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜

{{ ๋ณ€์ˆ˜๋ช….์†์„ฑ }} 

ํ…œํ”Œ๋ฆฟ์ด ๋ Œ๋” ๋  ๋•Œ ์šฐ๋ฆฌ๊ฐ€ ์ง€์ •ํ•ด ์ค€ ๊ฒฐ๊ณผ๋กœ ๋ณ€ํ™˜

view์—์„œ ๋„˜๊ฒจ ๋ฐ›์€ ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜

ex) codeit={ title:"django", version : 1.0}    ->    {{ codeit.title }} 

 

 

ํ…œํ”Œ๋ฆฟ ํ•„ํ„ฐ

: ํ…œํ”Œ๋ฆฟ ๋ณ€์ˆ˜๋ฅผ ํŠน์ • ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜

{{ ๋ณ€์ˆ˜๋ช… | ํ•„ํ„ฐ }}

ex) {{ codeit|upper }} ์€ codeit์ด๋ผ๋Š” ํ…œํ”Œ๋ฆฟ ๋ณ€์ˆ˜์— upper ํ•„ํ„ฐ ์ ์šฉํ•ด์„œ ๋ชจ๋‘ ๋Œ€๋ฌธ์ž๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.

 

 

ํ…œํ”Œ๋ฆฟ ํƒœ๊ทธ

: ํ…œํ”Œ๋ฆฟ ์ž‘์„ฑ์— ๋กœ์ง์„ ์‚ฌ์šฉ

{% ํƒœ๊ทธ %} {% endํƒœ๊ทธ %}

ex) {% for %}{% endfor %}, {% if %} ๋“ฑ๋“ฑ

๋”๋ณด๊ธฐ
{% tag %}

ํ…œํ”Œ๋ฆฟ ํƒœ๊ทธ๋Š” ํ…œํ”Œ๋ฆฟ์„ ์ž‘์„ฑํ•  ๋•Œ ๋ฐ˜๋ณต๋ฌธ, ์กฐ๊ฑด๋ฌธ ๋“ฑ์˜ ๋กœ์ง์„ ์‚ฌ์šฉํ•ด์„œ ๋งˆ์น˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋“ฏ ํ…œํ”Œ๋ฆฟ์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. Django๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ํƒœ๊ทธ๊ฐ€ ์žˆ์ง€๋งŒ, ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ํƒœ๊ทธ๋ฅผ ์ •์˜ํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

{% tag %} ~ {% endtag %}

ํƒœ๊ทธ์˜ ํ˜•ํƒœ๋Š” ๋‹จ๋…์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ ํƒœ๊ทธ์™€ ์—ฌ๋Š” ํƒœ๊ทธ์™€ ๋‹ซ๋Š” ํƒœ๊ทธ๊ฐ€ ํ•„์š”ํ•œ ํ…œํ”Œ๋ฆฟ ํƒœ๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๊ธฐ๋ณธ ํ…œํ”Œ๋ฆฟ ํƒœ๊ทธ์ž…๋‹ˆ๋‹ค.

for

{% for obj in values %} ~ {% endfor %}

๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉฐ ํ…œํ”Œ๋ฆฟ์„ ์ž‘์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์ฒ˜๋Ÿผ ๋ง์ด์ฃ .

{% for food in foods %} 
    <li> {{ food.name }} </li>
{% endfor %}

๋งŒ์•ฝ ๋ชฉ๋ก์„ ์—ญ์ˆœ์œผ๋กœ ๋ฐ˜๋ณตํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

{% for food in foods reversed %} 
    <li> {{ food.name }} </li>
{% endfor %}

๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๊ฐ€ ๋น„์–ด ์žˆ๊ฑฐ๋‚˜ ์กด์žฌํ•˜์ง€ ์•Š์„ ๋•Œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ๋งŒ์•ฝ foods๋ผ๋Š” ๊ฐ์ฒด๊ฐ€ ๋น„์–ด์žˆ๋‹ค๋ฉด {% empty %} ๊ตฌ๋ฌธ์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

{% for food in foods %} 
    <li> {{ food.name }} </li>
{% empty %}
    <li> There is no food. </li>
{% endfor %}

if

{% if value1 %} ~ {% elif value2 %} ~ {% else %} ~ {% endif %}

ํŒŒ์ด์ฌ์—์„œ ์‚ฌ์šฉํ•˜๋˜ ์กฐ๊ฑด๋ฌธ๊ณผ ํ˜•ํƒœ๊ฐ€ ๋น„์Šทํ•˜์ฃ ? ์‹ค์ œ๋กœ ์‚ฌ์šฉ ํ•  ๋•Œ๋„ ์šฐ๋ฆฌ๊ฐ€ ์•„๋Š” ์กฐ๊ฑด๋ฌธ์˜ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

{% if hungry %}
    <p> Let's eat! </p>
{% elif sleepy %}
        <p> You need some coffee. </p>
{% else %}
    <p> Go back to work. </p>
{% endif %}

with

{% with value1=value2 %} ~ {% endwith %}

๋ณต์žกํ•œ ๋ณ€์ˆ˜๊ฐ€ ์žˆ์„ ๋•Œ '๋ณ„๋ช…'์„ ๋ถ™์ด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. with ๊ตฌ๋ฌธ ๋‚ด์—์„œ๋Š” value1์„ value2 ๋Œ€์‹  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

ํ…œํ”Œ๋ฆฟ ์ฃผ์„

: ํ…œํ”Œ๋ฆฟ ์–ธ์–ด์˜ ์ฃผ์„์ฒ˜๋ฆฌ ๋‹ด๋‹น

{# ์ฃผ์„ #}

 

 


ํ…œํ”Œ๋ฆฟ ์ƒ์†

 

 ํ…œํ”Œ๋ฆฟ์˜ ๊ณตํ†ต์ ์ธ ๋‚ด์šฉ์„ ๋ถ€๋ชจ ํŒŒ์ผ๋กœ ๋งŒ๋“ค์–ด๋‘๊ณ 

์ž์‹ ํŒŒ์ผ์—์„œ๋Š” ๊ณตํ†ต๋ถ€๋ถ„์€ ๋ถ€๋ชจํŒŒ์ผ์—์„œ ๋ฐ›๊ณ , ๋‹ฌ๋ผ์ง€๋Š” ๋ถ€๋ถ„๋งŒ ์ž‘์„ฑํ•œ๋‹ค

 

{% block %} ๊ณผ {% extends %} ์‚ฌ์šฉ

 

 

base.html : ๋ถ€๋ชจ ํ…œํ”Œ๋ฆฟ

๋ณ€๊ฒฝ๋˜๋Š” ๋ถ€๋ถ„๋งŒ ๋ฐ”๊พธ๊ณ  ๋‚˜๋จธ์ง€๋Š” ๋‚จ๊ฒจ๋‘๋ฉด ๋œ๋‹ค!

 

 

index.html  : ์ž์‹ ํ…œํ”Œ๋ฆฟ

๋งจ ์œ„์—

{% extends './base.html' %}

 

 

728x90

๋Œ“๊ธ€