튜토리얼에서 자주 사용되지 않는 6개의 Django 템플릿 태그

3328 단어 djangopythonbeginners
이 문서는 문서를 읽지 않는 사람들과 몇 달 동안 Dash 앱을 갖고 있던 저를 위해 작성되었습니다.

몇 달 전 인턴십 첫날에 저는 회사의 비계에서 일하라는 임무를 받았는데 태그에 압도되어 태그를 조사하는 데 전혀 신경을 쓰지 않았습니다.

이들 중 일부는 비계에서 가져온 것이고 일부는 그렇지 않은 것입니다.

참고: 이 사이트에서 태그를 작동시키는 방법을 파악하지 못했기 때문에 템플릿 태그에 공백이 있습니다.

1.) for...empty


  • for 태그는 선택적
    {% empty %}
    지정된 배열이 비어 있거나 찾을 수 없는 경우 텍스트가 표시되는 절:
  • { % for student in student_list % }
        ...
    { % empty % }
        ...
    { % endfor % }

    또한 다음과 동일합니다.
    
      { % if student_list % }
        { % for student in student_list % }
          ...
        { % endfor % }
      { % else % }
        ...
      { % endif % }
    
    

    2.) 로렘


  • 아니요, 다른 패키지나 lorem 텍스트를 복사/붙여넣기가 필요하지 않습니다. 이 태그는 임의의 "lorem ipsum"라틴어 텍스트를 표시합니다. 이는 템플릿에서 샘플 데이터를 제공하는 데 유용합니다. 물론 그렇지 않다면 말입니다.
  • { % lorem [count] [method] [random] % }
    

    예를 들어
    - { % lorem % } will output the common “lorem ipsum” paragraph.
    - { % lorem 3 p % } will output the common “lorem ipsum” paragraph and two random paragraphs each wrapped in HTML 

    tags. - { % lorem 2 w random % } will output two random Latin words.

    3.) 지금


  • 지정된 문자열에 따른 형식을 사용하여 현재 날짜 및/또는 시간을 표시합니다. 이러한 문자열은 날짜 필터 섹션에 설명된 대로 형식 지정자 문자를 포함할 수 있습니다.
  • { % now "jS F Y" % }
    

    4.) 리셋 사이클


  • 다음 발생 시 첫 번째 항목부터 다시 시작하도록 이전 주기를 재설정합니다. 인수 없이,
    {% resetcycle %}
    마지막으로 재설정합니다
    {% cycle %}
    템플릿에 정의되어 있습니다.
  • { % for coach in coach_list % }
          { { coach.name } }
        { % for athlete in coach.athlete_set.all % }
            

    { { athlete.name } }

    { % endfor % } { % resetcycle % } { % endfor % }

    이 예는 다음 HTML을 반환합니다.

    조세 무리뉴

    Thibaut Courtois

    John Terry

    Eden Hazard

    카를로 안첼로티

    Manuel Neuer

    Thomas Müller


    5.) 그대로


  • 템플릿 엔진이 이 블록 태그의 내용을 렌더링하는 것을 중지합니다.
  • 일반적인 용도는 Django의 구문과 충돌하는 JavaScript 템플릿 레이어를 허용하는 것입니다. 예:
  • { % verbatim % }
        { {if dying} }Still alive.{ {/if} }
    { % endverbatim % }
    
  • 렌더링되지 않은 내용의 일부로 { % endverbatim % } 사용을 허용하는 특정 닫기 태그를 지정할 수도 있습니다.
    { % verbatim myblock % }
    Avoid template rendering via the { % verbatim % }{ % endverbatim % } block.
    { % endverbatim myblock % }
    

  • 6.) 너비 비율


  • 막대형 차트 등을 만들기 위해 이 태그는 지정된 값과 최대값의 비율을 계산한 다음 해당 비율을 상수에 적용합니다.
  • Imagine an image here
    
  • this_value가 175, max_value가 200, max_width가 100이면 위의 예에서 이미지의 너비는 88픽셀이 됩니다(175/200 = .875; .875 * 100 = 87.5는 88로 반올림되기 때문). .
  • 경우에 따라 변수에서 너비 비율의 결과를 캡처해야 할 수 있습니다. 예를 들어 다음과 같은 블록트랜스에서 유용할 수 있습니다:
  • { % widthratio this_value max_value max_width as width % }
    { % blocktrans % }The width is: { { width } }{ % endblocktrans % }
    

    마지막 참고 사항: 이 사이트에서 태그를 작동시키는 방법을 파악하지 못했기 때문에 템플릿 태그에 공백이 있습니다.

    좋은 웹페이지 즐겨찾기