Django टेम्पलेट्स में टुकड़ा टैग अजगर का टुकड़ा करने की क्रिया कोड का उपयोग सकता है, लेकिन वाक्य रचना निश्चय अलग है।
>>>mylist = ["0th Element", "1th Element"]
>>>zero, one = 0, 1
>>>mylist[zero]
"0th Element"
>>>mylist[one]
"1th Element"
Django टुकड़ा टेम्पलेट टैग के साथ इस वाक्य रचना का उपयोग करते हुए एक कटा हुआ सूची प्रदान करेगा: उदाहरण के लिए, यदि आप अजगर, एक चर के साथ एक दृश्य का एक तत्व प्राप्त करना चाहता था आप निम्न जैसा कुछ लिखते हैं
[] ["0th Element"] ["0th Element", "1th Element"]
नोट मतभेद: आप फिर से हो रही है
{% with "0" as zero %}
{% with "1" as one %}
{% with "2" as two %}
{{mylist|slice:zero}} {{mylist|slice:one}} {{mylist|slice:two}}
{% endwith %}
{% endwith %}
{% endwith %}
एचटीएमएल को रेंडर: ज्ञात सूचकांक के एक आइटम प्राप्त करने के लिए संदिग्ध उपयोगिता के हर मामले में, mylist[x]
के बजाय mylist[:x]
का झुकाव।
Django इस के आसपास काम करने के लिए पर्याप्त उपकरण प्रदान करता है। पहली चाल आपके सूचकांक के लिए 0:1
जैसे स्पष्ट स्लाइस का उपयोग करना है, और उसके बाद |join:""
परिणामी सूची को एक तत्व में उपयोग करना है।इसलिए जैसा:
{% with "0:1" as zero %}
{{mylist|slice:zero|join:""}}
{% endwith %}
पैदावार:
0th Element
यह विशेष रूप से काम में आता आप जब एक बच्चे के पाश के अंदर एक iterable के साथ काम कर एक माता पिता के पाश के सूचकांक का उपयोग करने की जरूरत है:
{% for parent in parent_loop %}
{% cycle "0:1" "1:2" "2:3" as parent_loop_index silent %}
{% for child in child_loop %}
{{child|slice:parent_loop_index|join:""}}
{% endfor %}
{% endfor %}
स्टॉक पार्ट्स के अलावा कुछ भी नहीं मिला, हालांकि मुझे नहीं लगता कि Django ने अभी तक उपलब्धियां लागू की हैं।
क्या आप केवल उन मूल्यों को पारित कर सकते हैं जिन्हें आपको दृश्य में चाहिए? यदि आप हाथ से पहले सीमा को जानते हैं तो क्यों न केवल सटीक मूल्यों को पारित करें जिन्हें आप प्रदर्शित करने का प्रयास कर रहे हैं? – dm03514
नहीं, मैं इस मामले में नहीं कर सकता। यह हार्ड कोडिंग कस्टम शॉपिंग कार्ट पेज है और यह सब कुछ नेस्टेड रूपों का हिस्सा है। – Goran