Django——07.템플릿 변수,if문,for문

템플릿 변수if문, for문
템플릿 변수
  • 모델에서 변수를 사용하려면 { { }}에 변수를 넣어야 한다.
  • 대상의 속성에 접근하려면 . 를 통해 접근할 수 있습니다.
    class Person(object):
        def __init__(self,username):
            self.username = username
    
    context = {
           
        'person': p
    }
    
    앞으로 방문하고 싶은 personusernameperson.username를 통해 방문하는 것이다.
  • 한 사전의 키에 대응하는value에 접근하려면 .key로만 접근할 수 있고 []로만 접근할 수 없습니다.
    context = {
           
        'person': {
           
            'username':'xiaosheng'
        }
    }
    
    그럼 나중에 템플릿에서 방문username할게요.바로 아래 코드person.username
  • 입니다.
  • 사전에 접근할 때key .로 접근하기 때문에 사전에 있는 사전 자체의 속성 이름을 key로 정의할 수 없다. 그렇지 않으면 사전의 그 속성은 프로그래밍 사전의 키를 만들 것이다.
    context = {
           
        'person': {
           
            'username':'xiaosheng',
            'keys':'abc'
        }
    }
    
    이상keysperson이라는 사전으로 삼았기 때문key.따라서 앞으로 템플릿에서 person.keys 방문할 때 이 사전의 모든 키가 아니라 대응하는 값으로 되돌아옵니다.
  • 목록이나 모듈에 접근하려면 . 방식으로 방문하고 [] 형식으로 접근할 수 없습니다.이 점은python과는 다르다.예제 코드는 다음과 같습니다.
    {
           {
            persons.1 }}
    
  • if문:
  • 모든 라벨은 {%%} 사이에 있다.
  • if 라벨은 닫힌 라벨이 있습니다.바로{% endif %}.
  • if 라벨의 판단 연산자는python의 판단 연산자와 같다.==、!=、、>=、in、not in、is、is not 이것들은 모두 사용할 수 있다.
  • elif 등의 라벨도 사용할 수 있다.

  • for... in... 노트:else 레이블:for...in...for...in... 중의 Python와 유사하다.목록, 모듈, 문자열, 사전 등 모든 대상을 훑어볼 수 있습니다.예제 코드는 다음과 같습니다.
    {
         % for person in persons %}
    <p>{
         {
          person.name }}</p>
    {
         % endfor %}
    

    역방향으로 옮겨다니려면 옮겨다닐 때 하나를 더해라for...in....
    {
         % for person in persons reversed %}
    <p>{
         {
          person.name }}</p>
    {
         % endfor %}
    

    사전을 두루 돌아다닐 때는 reversed,itemskeys 등의 방법을 사용해야 한다.values에서 하나의 방법을 실행할 때 원괄호의 형식을 사용할 수 없다.다음은 사전 반복 예제 코드입니다.
    {
         % for key,value in person.items %}
    <p>key:{
         {
          key }}</p>
    <p>value:{
         {
          value }}</p>
    {
         % endfor %}
    
    DTL 순환에서 for 일부 변수를 제공하여 사용할 수 있다
  • DTL: 현재 순환의 하표.1을 시작값으로 합니다.
  • forloop.counter: 현재 순환의 하표.0을 시작값으로 합니다.
  • forloop.counter0: 현재 순환의 반방향 하표값.예를 들어 목록에 다섯 개의 요소가 있다면 이 속성을 처음 훑어보면 5이고 두 번째는 4이다. 이런 식으로 추정된다.그리고 1을 마지막 요소로 하는 하표입니다.
  • forloop.revcounter:forloop과 유사하다.revcounter.다른 것은 마지막 원소의 하표가 0에서 시작된다는 것이다.
  • forloop.revcounter0: 처음 겪는 건지.
  • forloop.first: 마지막으로 훑어보았는지.
  • forloop.last: 여러 개의 순환 플러그인이 있다면 이 속성은 상급의 for순환을 대표한다.

  • **템플릿의 for...in...continue와break 문구가 없는 점은 Python과 크게 다르니 꼭 기억해야 합니다!**forloop.parentloop 레이블:
    이 탭의 사용은 for...in...empty 과 같지만, 반복되는 대상이 요소가 없으면 for...in... 의 내용을 실행합니다.예제 코드는 다음과 같습니다.
    {
         % for person in persons %}
    <li>{
         {
          person }}</li>
    {
         % empty %}
            
    {
         % endfor %}
    

    좋은 웹페이지 즐겨찾기