यदि आप django.contrib.auth.views.password_reset के स्रोतों पर एक नज़र डालें तो आप देखेंगे कि यह उपयोग करता है RequestContext
। अपशॉट है, आप संदर्भ को संशोधित करने के लिए प्रसंग प्रोसेसर का उपयोग कर सकते हैं जो आपको आवश्यक जानकारी को इंजेक्ट करने की अनुमति दे सकता है।
बी-सूची में संदर्भ प्रोसेसर का अच्छा परिचय है ।
संपादित करें (मुझे लगता है कि वास्तविक सवाल क्या था के बारे में उलझन में है):
आप देखेंगे कि password_reset
नामांकित पैरामीटर लेता है template_name
:
def password_reset(request, is_admin_site=False,
template_name='registration/password_reset_form.html',
email_template_name='registration/password_reset_email.html',
password_reset_form=PasswordResetForm,
token_generator=default_token_generator,
post_reset_redirect=None):
अधिक जानकारी के लिए password_reset जांचें ।
... इस प्रकार, एक urls.py जैसे:
from django.conf.urls.defaults import *
from django.contrib.auth.views import password_reset
urlpatterns = patterns('',
(r'^/accounts/password/reset/$', password_reset, {'template_name': 'my_templates/password_reset.html'}),
...
)
django.contrib.auth.views.password_reset
'/accounts/password/reset'
कीवर्ड तर्क के साथ मेल खाने वाले URL के लिए बुलाया जाएगा template_name = 'my_templates/password_reset.html'
।
अन्यथा, आपको कोई संदर्भ प्रदान करने की आवश्यकता नहीं है क्योंकि password_reset
दृश्य स्वयं का ध्यान रखता है। यदि आप यह देखना चाहते हैं कि आपके पास कौन सा संदर्भ उपलब्ध है, तो आप एक TemplateSyntax
त्रुटि को ट्रिगर कर सकते हैं और स्टैक ट्रेस के माध्यम से एक स्थानीय चर नाम के साथ फ्रेम ढूंढ सकते हैं context
। यदि आप संदर्भ को संशोधित करना चाहते हैं, तो मैंने संदर्भ प्रोसेसर के बारे में जो कहा है, वह शायद जाने का तरीका है।
संक्षेप में: अपने स्वयं के टेम्पलेट का उपयोग करने के लिए आपको क्या करने की आवश्यकता है? template_name
जब यह कहा जाता है तो देखने के लिए एक कीवर्ड तर्क प्रदान करें । आप URL डिस्क्रिप्शन टपल के तीसरे सदस्य के रूप में एक डिक्शनरी को शामिल करके विचारों की आपूर्ति कर सकते हैं।
context
आप जिस चीज़ की तलाश कर रहे हैं वह सही है!