2009-03-11 15 views
9

मैं हाल ही में django सीखने में कूद गया।Django पुन: समूह अपेक्षित काम नहीं करता

मैं की तरह citylist साथ मेरे टेम्पलेट प्रतिपादन कर रहा हूँ,

{'citylist': Cities.objects.all()} 

और नीचे टेम्पलेट (Django-डॉक्स में के रूप में ही) में देश पर reqroup हैं:

{% regroup citylist by country as coutrylist %} 

<ul> 
{% for country in countrylist %} 
    <li>{{ country.grouper }} 
    <ul> 
     {% for c in country.list %} 
     <li>{{ c.name }}</li> 
     {% endfor %} 
    </ul> 
    </li> 
{% endfor %} 
</ul> 

लेकिन मैं कुछ unextpected मिल परिणाम,

France 
    Strasbourg 

Australia 
    Penrith 
    Sydney 

US 
    Larsen Bay 

France 
    Reims 

US 
    Avenal 

मुझे नहीं लगता कि मैं अपने टेम्पलेट में कुछ गलत कर रहा हूं। या यह एक बग है ??

उत्तर

8

समस्या कोड में नहीं है, लेकिन डेटा के साथ आप में इंजेक्शन लगाने रहे हैं।

कहा गया है कि

यह करने के लिए सबसे आसान समाधान पकड़ लिया है

{'citylist': Cities.objects.all().order_by('country')} 

django-docs करने के लिए अपने संदर्भ बदलें यह सुनिश्चित करने के लिए कि आपके दृश्य कोड में डेटा को आदेश दिया गया है कि आप इसे कैसे प्रदर्शित करना चाहते हैं।

+13

आपका जवाब किया जा रहा है सही नहीं है यह ठीक आपका रवैया गलत होने के लिए। – ironfroggy

+0

लोहे के साथ सहमत सहमत –

+1

वैसे मैं इसके लिए क्षमा चाहता हूं। लेकिन मेरी कोशिश यह थी कि उन्हें इस तथ्य से अवगत कराया जाए कि कुछ बग बुलाए जाने से पहले दस्तावेज़ों को ध्यान से पढ़ना आवश्यक है। यह सम्मान था कि मेरे पास एक दृष्टिकोण के मुकाबले ढांचे को आकार देने और चमकाने के लिए विशाल समुदाय है। हालांकि बीआरटीएस के लिए मेरी माफ़ी। – simplyharsh

2

मैं भी एक और समाधान के लिए दस्तावेज़ को इंगित करना चाहते हैं। http://docs.djangoproject.com/en/dev/ref/templates/builtins/#regroup

आप टेम्पलेट में अपना शब्दकोश सॉर्ट कर सकते हैं।

{% फिर से इकट्ठा citylist ** | dictsort: countrylist% के रूप में "देश" ** देश से}

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