login_required और दृश्यों की सुरक्षा
पृष्ठों को प्रमाणित उपयोगकर्ताओं तक सीमित करें
login_required और दृश्यों की सुरक्षा, CoddyKit पर Django Academy का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Django Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Django Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
कुछ पृष्ठ निजी होते हैं
डैशबोर्ड या प्रोफ़ाइल पृष्ठ केवल लॉगिन किए हुए उपयोगकर्ताओं के लिए खुलना चाहिए। Django ऐसे दृश्यों की सुरक्षा को सरल और एकसमान बनाता है। 🚧
login_required से परिचय
login_required सज्जक किसी दृश्य की सुरक्षा करता है: अनाम आगंतुकों को अपने-आप लॉगिन पृष्ठ पर भेज दिया जाता है।
from django.contrib.auth.decorators import login_requiredकिसी दृश्य पर सज्जक लगाएँ
अपने दृश्य फ़ंक्शन के ठीक ऊपर @login_required रखें। पृष्ठ को सुरक्षित करने के लिए यही एक पंक्ति पर्याप्त है।
@login_required
def dashboard(request):
return render(request, "dashboard.html")आगंतुकों को कहाँ भेजा जाता है
पहुंच अस्वीकृत होने पर Django LOGIN_URL में दिए गए URL पर पुनर्निर्देशित करता है। सेटिंग्स में इसे निर्धारित करें, ताकि आगंतुक आपके लॉगिन पृष्ठ पर पहुँचें।
LOGIN_URL = "/accounts/login/"अगला पैरामीटर
पुनर्निर्देशन मूल URL के साथ next क्वेरी मान जोड़ता है, इसलिए लॉगिन के बाद उपयोगकर्ता उसी इच्छित पृष्ठ पर लौट आता है। 🎯
क्लास-आधारित दृश्यों की सुरक्षा
क्लास-आधारित दृश्यों के लिए सज्जक के बजाय LoginRequiredMixin का उपयोग करें। आधार क्लासों में इसे सबसे पहले लिखें।
from django.contrib.auth.mixins import LoginRequiredMixinMixin का स्थान महत्वपूर्ण है
क्लास की परिभाषा में LoginRequiredMixin को सामान्य दृश्य से पहले रखना आवश्यक है, वरना सुरक्षा लागू नहीं होगी।
class Dashboard(LoginRequiredMixin, TemplateView):
template_name = "dashboard.html"दृश्य के भीतर जाँच करें
कभी-कभी आप स्वयं नियंत्रण रखना चाहते हैं। सज्जक का उपयोग करने के बजाय request.user.is_authenticated पढ़कर अपने अनुसार शाखा चुनें।
if not request.user.is_authenticated:
return redirect("login")अनुमतियाँ इससे आगे जाती हैं
केवल किसी भी लॉगिन की नहीं, बल्कि किसी विशेष अधिकार की आवश्यकता हो तो permission_required का उपयोग करें। यह जाँचता है कि उपयोगकर्ता के पास नामित अनुमति है।
from django.contrib.auth.decorators import permission_requiredटेम्पलेट में लिंक छिपाएँ
टेम्पलेट में निजी लिंक को user.is_authenticated के साथ रखें, ताकि मेहमानों को वे बटन दिखाई ही न दें जिनका वे उपयोग नहीं कर सकते।
बहुस्तरीय सुरक्षा
लिंक छिपाना वास्तविक सुरक्षा नहीं है। स्वयं दृश्य की भी हमेशा सुरक्षा करें, क्योंकि उपयोगकर्ता कोई भी URL सीधे लिख सकते हैं।
त्वरित जाँच
कौन-सी सेटिंग तय करती है कि login_required अनाम उपयोगकर्ताओं को कहाँ भेजेगा?
पुनरावलोकन: दृश्यों की सुरक्षा
आपने login_required और LoginRequiredMixin से पृष्ठ सुरक्षित किए, LOGIN_URL निर्धारित किया और केवल लिंक छिपाने के बजाय दृश्यों की सुरक्षा करना सीखा। ✅
एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 30
- पाठ
- 120
अक्सर पूछे जाने वाले प्रश्न
क्या “login_required और दृश्यों की सुरक्षा” पाठ निःशुल्क है?
हाँ — Django Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “login_required और दृश्यों की सुरक्षा” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Django Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“login_required और दृश्यों की सुरक्षा” में मैं क्या सीखूँगा?
पृष्ठों को प्रमाणित उपयोगकर्ताओं तक सीमित करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Django Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Django Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Django Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।
“login_required और दृश्यों की सुरक्षा” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Django Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Django Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- User Model और authenticate()
- login, logout और Auth Views
- UserCreationForm से पंजीकरण
- login_required और दृश्यों की सुरक्षा