2012-02-22 12 views
6

मेरे पास 16 परिणामों की एक सूची है, चलिए इसे "परिणाम" कहते हैं। मैं उन्हें 4 एक्स 4 टेबल में व्यवस्थित करना चाहता हूं।django टेम्पलेट HTML तालिका में सरणी

django टेम्पलेट का उपयोग करके, मैं यह कैसे कर सकता हूं? (ऐसा लगता है कि चक्र मुझे यहां मदद करेगा)

<table> 
{% for r in results %} 
...? 
{% endfor %} 
</table> 

धन्यवाद !!

उत्तर

16

आप इसके लिए cycle टैग का उपयोग कर सकते हैं।

<table> 
    {% for r in results %} 
    {% cycle '<tr>' '' '' '' %} 
     <td>{{r.content}}</td> 
    {% cycle '' '' '' '</tr>' %} 
    {% endfor %} 
</table> 

चाहेंगे उत्पादन कुछ की तरह ...

<table> 
    <tr> 
    <td>result 1</td> 
    <td>result 2</td> 
    <td>result 3</td> 
    <td>result 4</td> 
    </tr> 
    <tr> 
    <td>result 5</td> 
    <td>result 6</td> 
    <td>result 7</td> 
    <td>result 8</td> 
    </tr> 
    <!-- etc --> 
</table> 
+0

अच्छी चाल। अब मैं इसे बचा रहा हूँ। नई बात सीखना! – CppLearner

+0

धन्यवाद, जैसा कि मुझे चाहिए वैसे ही काम करता है। इसकी प्रशंसा करना। –

7

आप एक सरणी (वास्तव में, एक शब्दकोश) इस तरह से है कि यह

<table> 
<tr> 
    <th>header1</th> 
    <th>header2</th> 
    <th>header3</th> 
    <th>header4</th> 
</tr> 
{% for r in result %} 
<tr> 
    <th> {{ result.name }}</th> 
    <th> {{ result.address }}</th> 
    <th> {{ result.time }}</th> 
    <th> {{ result.date }}</th> 
</tr> 
{% endfor %} 
</table> 

प्रदान की तरह कुछ का निर्माण करने के

result['name'] 
result['address'] 
result['time'] 
result['date'] 
return render_to_response("my_template.html", {'result:result'}) 

एक संख्या हैं ऐसा करने की जरूरत है। यह सबसे सरल तरीका है। Django टेम्पलेट टैग प्रलेखन को देखो।

यहां तकनीक की एक सूची है जो मैंने सीखा है। और भी हैं, लेकिन मेरे पास उन सभी को दस्तावेज करने का समय नहीं है। http://binarybugs01.appspot.com/entry/template-iteration-techniques

कभी-कभी आपको टेम्पलेट में जा रहे संदर्भ शब्दकोश से सावधान रहना होगा। आप इस

result = {'name': 'John', 'time': '12/2/2012'....etc} 
context['result'] = result 
return render_to_response("my_template.html", context} 

आप result.result से अधिक पुनरावृत्ति कर रहे हैं गुजर रहे हैं और चाबियाँ हैं result.result.name


मैं भी तुम्हें याद दिलाना है कि आप या तो एक सूची, एक सेट, एक शब्दकोश है, चाहते हैं या एक tuple.You सरणी आयात कर सकते हैं और इसका उपयोग, हालांकि।

+4

नहीं result.name मुझे लगता है कि इसके r.name और r.time, r.address, r.date {परिणाम% में आर के लिए% } {{result.name}} {{result.address}} {{result.time}} 0,123,{{result.date}} {% endfor%} – zabusa

संबंधित मुद्दे