○ 이스케이핑

   - 적은 단위 작업: 작은 따옴표 ( 특수문자를 일반 문자로 처리 )

     '&nbsp'같은 공백문자를 jinja2에서는 '로 감싸서 표시 ''&nbsp''

  - 큰 단위 블럭 구문의 경우

     {% raw %}

         ---

         ---

     {% rawend %}

 

 jinja2 template engine의 주석처리

   {#     #}

 

○ html 주석처리

   (!--    

           ---

           ---

           ---

   ->

 

 jinja2에서 불필요 개행("/n")문자삭제

 

   {# #}

 

- "/n" 문자 제거 : {%   -%}   

 

 

○ 매크로 만들기 : 

   - {% macro <macro name>(macro argument1, arg2,,,)  %}

     <action script 실행코드 >

     {% endmacro %}

 

   - 예제 -

    {% macro input(name, value='',type='text',size=30)%}

       <input type="{{type}}" name="{{name}}" value="{{value}}" size="size}}">

    {% endmacro%}  ==> 매크로 작성

     <p>{{input('username')}}</p>

     <p>{{input('password',type='password')}}</p>

 

실행코드

from jinja2 import Environment, FileSystemLoader

file_loader = FileSystemLoader('templates')

env = Environment(loader=file_loader)

template = env.get_template("macro.html")

template.render()

print(template.render())

 

 

 

===macro.html에서 개행문자 제거 명령 적용

{% macro input(name='', value='',type='text',size=30) -%}

  <input type="{{type}}" name="{{name}}" value="{{value}}" size="{{size}}">

{%- endmacro %}

  <p> {{input('username')}}</p>

  <p> {{input('password',type='password')}}</p>

 

--실행 결과 --

 

 

 

 

 

 

 

 

 

 

 

 

+ Recent posts