2014-11-08 65 views
0

我從Django短暫休息一下,我剛回來,我可能已經忘記了一些事情。我試圖把一個for循環在我的模板,現在我得到了以下錯誤:爲什麼我在我的Django模板中獲取無效塊標記?

Invalid block tag: 'i.headline', expected 'empty' or 'endfor' 

我不知道爲什麼,因爲我在年底的ENDFOR標籤。我在下面包含了我的模型,視圖和html模板(希望我在這裏包含了足夠的信息)。

models.py

class Entry(models.Model): 
    headline= models.CharField(max_length=200,) 
    body_text = models.TextField() 

    def __str__(self): 
     return u'%s %s %s %s %s %s %s' % (self.headline, self.body_text) 

views.py

def storefront(request): 
    latest_entries = Entry.objects.filter() 
    context = {'latest_entries': latest_entries} 
    return render(request, 'storefront.html', context) 

模板

{% for i in latest_entries %} 
     <div class="bodydiv"> 
      <div class="container"> 
       <div class="grid_4"> 
        <div class="imgcontainer"> 
         <img src="/static/img/samples/testpic.jpg" alt="" /> 
         <div class="overlayname">{% i.headline %}</div> 
        </div> 
        <div class="textcontainer"> 
         <p>test test test test test test test teste</p> 
        </div> 
       </div> 
      </div> 
     </div> 
    {% endfor %} 

回答

2

Template Variables通過在Django雙大括號括起來。替換:

{% i.headline %} 

有:

{{ i.headline }} 

{% something %}語法用於在Django Template Tags

+0

這是真的,以前的答案說,你必須用雙花括號{{i.wantbe}}來包圍變量。只是一個例子。 – 2017-01-28 18:21:36

相關問題