2013-10-28 5 views
32

में एक और स्ट्रिंग शामिल है तो यह मेरा कोड टेम्पलेट में है।कैसे देखें यदि स्ट्रिंग में Django टेम्पलेट

{% if 'index.html' in "{{ request.build_absolute_uri }}" %} 
    'hello' 
{% else %}  
    'bye' 
{% endif %} 

अब मेरी यूआरएल मान अभी "http://127.0.0.1:8000/login?next=/index.html"

भी "index.html" हालांकि स्ट्रिंग यह अभी भी अलविदा प्रिंट में नहीं है।

जब मैं एक पाइथन खोल में एक ही कोड चलाता हूं तो यह काम करता है। सुनिश्चित नहीं है कि गलती क्या है।

+1

एक कस्टम टेम्पलेट टैग आप – Anto

+0

में मदद मिलेगी हो सकता है लिखने इस स्निपेट https://djangosnippets.org/snippets/1350/ request.build_absolute_uri% में आप – alko

उत्तर

63

अतिरिक्त {{...}} टैग और "..." उद्धरण request.build_absolute_uri के आसपास उद्धरण को आजमाएं, यह मेरे लिए काम करता है।

चूंकि आप पहले से ही {% if %} टैग के भीतर हैं, को {{...}} टैग के साथ घूमने की कोई आवश्यकता नहीं है।

{% if 'index.html' in request.build_absolute_uri %} 
    hello 
{% else %} 
    bye 
{% endif %} 
क्योंकि उद्धरण के आप सचमुच खोज रहे हैं स्ट्रिंग "{{ request.build_absolute_uri }}" और नहीं का मूल्यांकन Django टैग जिन्हें आप इरादा

+2

सही @farmerjoe '{% अगर 'index.html' मदद मिल सकती है } 'यह मेरे लिए काम करता है। मुझे कस्टम टेम्पलेट टैग लिखना है। लेकिन यह मेरे लिए काम किया। – curiousguy

+0

@DibyenduDutta Glad मैं मदद कर सकता था! –

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