2012-09-02 33 views
1

我正在創建顯示幻燈片幻燈片(其中存儲爲名爲slide001.png,slide002.png等的圖像)以及配音副本的頁面。模板是這樣的:使用Jinja2模板翻譯元素並添加枚舉ID?

< DIV CLASS = 「成績單」 >
    <p>您好,歡迎來到第一張幻燈片。 </p >
    <p>這是第二張幻燈片。 </P >
    <p> /...and等等... </P >
</DIV >

我想這個翻譯成:

< div class =「transcript」>
    < DIV類= 「滑動」 >
        < IMG SRC = 「slide001.png」/ >
        <p>您好,歡迎到第一幻燈片。 </P >
    < /格>
    ...等爲每個滑動...
< /格>

即,每個段落被包裹在一個div,一個img元素插入一個連續編號的圖像引用。我現在正在用JavaScript做這件事,但是因爲我使用Jinja2來做其他事情(插入一致的頁眉和頁腳,創建前向/後向鏈接等),我希望我可以做遍歷和枚舉在Jinja2中也是如此。沒有英雄式的黑客可能嗎?

+0

是的,如果你告訴我們,實際的模板,你表現僅僅是生成html並沒用。 – dav1d

+0

如果我有模板,我不需要發佈這個問題:-)我所擁有的是我開始使用的HTML,我希望將其轉換爲模板以及所需的輸出;我需要的是模板,它會做到這一點。 –

回答

1

如果你可以在你的頁面中獲得以下格式的數據,那麼它可以很好地渲染。

transcript = [{'image': 'filepath', 'text':'welcome...'}, 
       {'image': 'filepath2', 'text':'slide2'}, 
       {'image': 'filepath3', 'text':'slide3'}] 

的神社可以放置在線或移動到宏但這會做的伎倆兩種方式:

<div class="transcript"> 
    {% for slide in transcript %} 
    <div class="slide"> 
    <img src="{{ slide.image }}"/> 
    <p>{{ slide.text }}</p> 
    </div> 
    {% endfor %} 
</div>