2013-04-29 263 views
0

我是Django的新手,並且有一個基本問題。我創建了一個Django模板,並希望將外部變量傳遞給它,該變量控制colspan標記。我嘗試了幾次,但無法提供變量。我感謝任何幫助。將變量傳遞給Django模板

Python代碼:

def getdjtemplate(th_span="1"): 
    dj_template =""" 
    <table class="out_"> 
    {# headings #} 
     <tr> 
     {% for heading in headings %} 
      <th colspan={{ %s }}>{{ heading }}</th> 
     {% endfor %} 
     </tr> 
    </table> 
    """%(th_span) 
    return dj_template 

我想我不應該用這個,但不知道如何解決它。

<th colspan={{ %s }}>{{ heading }}</th> 

回答

1

您剛剛返回一個字符串。您必須調用django方法來渲染模板:

from django.template import Context, Template 
def getdjtemplate(th_span="1"): 
    dj_template =""" 
    <table class="out_"> 
    {# headings #} 
     <tr> 
     {% for heading in headings %} 
      <th colspan={{ th_span }}>{{ heading }}</th> 
     {% endfor %} 
     </tr> 
    </table> 
    """ 
    t = Template(dj_template) 
    headings = ["Hello"] 
    c = Context({'headings':headings, 'th_span':th_span}) 
    return t.render(c) 
+0

謝謝。我忘記了將'th_span':th_span'包含到'Context'調用中 – 2013-04-29 22:11:10

相關問題