में अपना स्वयं का संदर्भ प्रोसेसर बनाना मैं एक ऐसे बिंदु पर आया हूं जहां मुझे अपने सभी विचारों (ज्यादातर कस्टम प्रमाणीकरण प्रकार चर) में कुछ चर पारित करने की आवश्यकता है।django
मुझे बताया गया कि मेरा खुद का संदर्भ प्रोसेसर यह करने का सबसे अच्छा तरीका था, लेकिन मुझे कुछ समस्याएं हैं।
मेरी सेटिंग्स फ़ाइल इस
TEMPLATE_CONTEXT_PROCESSORS = (
"django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.contrib.messages.context_processors.messages",
"sandbox.context_processors.say_hello",
)
तरह लग रहा है जैसा कि आप देख सकते हैं, मैं एक मॉड्यूल 'context_processors' कहा जाता है और 'say_hello' कहा जाता है कि भीतर एक समारोह है।
मैं सही ग्रहण करने के लिए कर रहा हूँ अब मैं अपने विचारों के भीतर निम्न कर सकते हैं की तरह
def say_hello(request):
return {
'say_hello':"Hello",
}
लग रहा है?
{{ say_hello }}
अभी, यह मेरे टेम्पलेट में कुछ भी प्रस्तुत नहीं करता है।
मेरा विचार
from django.shortcuts import render_to_response
def test(request):
return render_to_response("test.html")
'context_instance' क्या गुम था! धन्यवाद टीएम – dotty
अनुवर्ती, मुझे इस संदर्भ_instance की आवश्यकता कैसे है? अगर मैं django की ऑथ सिस्टम का उपयोग करता हूं तो मुझे इसकी आवश्यकता क्यों नहीं है? – dotty
Django के अंतर्निहित विचार आपके लिए इसे संभालते हैं (वे 'RequestContext' का उपयोग करते हैं)। आपके द्वारा किए गए संदर्भ प्रोसेसर के बारे में सोचें। यह तर्क के रूप में 'अनुरोध' लेता है। इसका मतलब है कि आपको किसी भी तरह से प्रतिपादन तर्क को वर्तमान अनुरोध देना होगा। 'RequestContext' मूल रूप से सभी संदर्भ प्रोसेसर के माध्यम से लूपिंग के सरल तर्क को संभालता है और वर्तमान अनुरोध को पास करता है, फिर परिणाम के साथ पृष्ठ संदर्भ अद्यतन करता है। –