मेरे पास manor_stats
नामक एक डेटाबेस ऑब्जेक्ट है, जिसमें लगभग 30 फ़ील्ड हैं। ज्यादातर पंक्तियों के लिए, इनमें से अधिकतर फ़ील्ड शून्य होंगे।Django टेम्पलेट्स: किसी ऑब्जेक्ट के सभी उपलब्ध गुणों के माध्यम से लूप और प्रिंट करें?
मेरे टेम्पलेट में, मैं पंक्ति में सभी फ़ील्ड के माध्यम से लूप करना चाहता हूं, और उन फ़ील्ड के लिए प्रिंट जानकारी जो शून्य नहीं हैं।
उदाहरण के लिए, "नाम" नामक एक फ़ील्ड है: मैं केवल उन वस्तुओं के लिए <li>Name: {{ manor_stats.name }}</li>
प्रिंट करना चाहता हूं जहां फ़ील्ड शून्य नहीं है। आदर्श रूप से मैं इसे निर्दिष्ट करने के बजाए कहीं भी स्वचालित रूप से "नाम:" में खींचना चाहता हूं।
मुझे पता है कि मैं {% if manor_stats.name %}
का उपयोग यह जांचने के लिए कर सकता हूं कि प्रत्येक फ़ील्ड शून्य है, लेकिन मैं सभी क्षेत्रों के लिए 30 बार ऐसा नहीं करना चाहता हूं।
यहाँ है कि मैं क्या views.py में है:
manor_stats = Manors.objects.get(idx=id)
return render_to_response('place.html', { 'place' : place, 'manor_stats' : manor_stats }, context_instance = RequestContext(request))
और फिर place.html में, मैं ??? बिट्स का संकेत के साथ, कुछ है कि (इस तरह लगभग काम करता है स्यूडोकोड करना चाहते हैं कि ,
{% if manor_stats %}
<ul>
{% for manor_stats.property??? in manor_stats %}
{% if manor_stats.property %}
<li>{{ manor_stats.property.field_name??? }} {{ manor_stats.property.value??? }}</li>
{% endif %}
{% endfor %
{% endif %}
आशा है कि समझ में आता है ...
सटीक अनुलिपि: http://stackoverflow.com/questions/2170228/django-iterate-over-model- उदाहरण-फ़ील्ड-नाम-और-मूल्य-इन-टेम्पलेट –