2013-07-16 5 views
5

मैं django 1.5 का उपयोग कर रहा हूं, मुझे यह जांचने की आवश्यकता है कि कोई चर परिभाषित किया गया है (और यदि यह चर परिभाषित किया गया है लेकिन कोई नहीं, 0, "" इत्यादि। ।)। कुछ की तरह:जांचें कि क्या एक चर को django templating भाषा में परिभाषित किया गया है

{% ifexists a_variable %} 
    <p> Hey the variable exists </p> 
{% endifexists %} 

मैं कैसे सबसे अच्छा यह करने के लिए नहीं है ...

+6

यह एक वैरिएबल के बीच अंतर को बताने के बारे में एक उचित सवाल जैसा प्रतीत होता है जो कि संदर्भ में कुछ गलत है और एक चर जो सेट नहीं है। यह निश्चित रूप से बंद नहीं है- विषय –

उत्तर

3

documentation पढ़ें।

{%% यदि} टैग एक चर का मूल्यांकन करता है, और यदि उस चर "सही" (यानी मौजूद है ...

{% if athlete_list %} 
    Number of athletes: {{ athlete_list|length }} 
{% elif athlete_in_locker_room_list %} 
    Athletes should be out of the locker room soon! 
{% else %} 
    No athletes. 
{% endif %} 

तुम भी नहीं बल्कि बाहर की जाँच करने के लिए चाहते हो सकता है writing public views के लिए आसान Django ट्यूटोरियल

+6

निश्चित रूप से अगर athlete_list को सेट किया गया था [] या कोई नहीं यह अन्यथा जाएगा? यह वही नहीं है जो मुझे चाहिए, मुझे इसकी आवश्यकता है ताकि मैं बता सकूं कि एक चर सेट है (देखें http://codepad.org/OJbkRWYN) – Cucwx

+2

@Cucwx आप टेम्पलेट में संभावित रूप से असंतुलित चर क्यों भेज रहे हैं? किसी भी तरह से, यदि कोई चर अमान्य है (अनसेट), Django इसे 'TEMPLATE_STRING_IF_INVALID' के मान पर सेट करेगा, तो आप इसे कुछ और करने के लिए सेट कर सकते हैं और फिर जांच सकते हैं कि 'व्यक्ति' या 'कोच' उसके बराबर है या नहीं; [अमान्य टेम्पलेट चर] देखें (https://docs.djangoproject.com/en/1.1/ref/templates/api/#invalid-template-variables)। हालांकि यह वास्तव में एक अच्छा विचार नहीं है (जैसा कि डॉक्टर द्वारा व्यक्त किया गया है)। –

+0

@ SamStudio8 की टिप्पणी को उत्तर को प्रतिस्थापित करना चाहिए क्योंकि यह अधिक उपयोगी है। –

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