बस यह सोचकर कि मैं लॉगआउट के बाद url को रीडायरेक्ट करने के लिए कहां सेट कर सकता हूं। मुझे पता है कि आप लॉगिन यूआरएल सेट कर सकते हैं। मैं अपने होम पेज पर रीडायरेक्ट करना चाहता हूं।
जवाबों:
आधुनिक Django (2017+?) की एक सेटिंग है LOGOUT_REDIRECT_URL
।
आपको कुछ भी लिखने या लपेटने की आवश्यकता नहीं है।
डॉक्स के अनुसार, आप केवल next_page
लॉगआउट दृश्य में तर्क की आपूर्ति कर सकते हैं।
https://docs.djangoproject.com/en/dev/topics/auth/default/#django.contrib.auth.views.logout
(r'^logout/$', 'django.contrib.auth.views.logout',
{'next_page': '/successfully_logged_out/'})
एक आसान तरीका:
अपने लॉग-आउट अनुरोध url में 'अगला' पैरामीटर जोड़ें। उदाहरण के लिए:
<a href="{% url 'auth_logout' %}?next=/path_to_the_page"> Logout</a>
फिर लॉगआउट व्यू आपके लिए ट्रिक करेगा।
आफ्टर-लॉगिन-रीडायरेक्ट के लिए, आप बस इसे सेटिंग्स में सेट कर सकते हैं:
LOGIN_REDIRECT_URL = '/path_to_the_page'
LOGIN_URL = '/path_to_the_page'
base.html
और इसके बारे में भूल गया। : D (मैं डेबियन जेसी पर विंटेज Django का उपयोग कर रहा हूं: S इसलिए नई सेटिंग्स उपलब्ध नहीं हैं।)
Django 1.10 के बाद से, आप एक परिभाषित कर सकते हैं LOGOUT_REDIRECT_URL
( डॉक्स देखें )
वर्तमान पृष्ठ पर पुनर्निर्देशित करें
<a href="{% url 'logout' %}?next={{ request.path | urlencode }}">{% trans "Logout" %}</a>
Django 1.9 में परीक्षण किया गया।
इसे भी देखें: क्या जिओगो के {% url%} टेम्पलेट टैग के माध्यम से क्वेरी मापदंडों को पारित करना संभव है?
अपने लॉगआउट दृश्य में, उपयोगकर्ता को अच्छे के लिए लॉगआउट करने के बाद, HttpResponseRedirect (url) वापस करें। अधिक जानकारी के लिए कृपया यहां देखें ।
यदि आप क्लाइंट स्तर पर पुनर्निर्देशन URL सेट करना चाहते हैं, तो आप इसमें कर सकते हैं urls.py
:
(r'^management/logout/$', 'django.contrib.auth.views.logout'),
और फिर टेम्पलेट में:
<a href="{% url 'django.contrib.auth.views.logout' %}?next=/">
Log out
</a>
जहाँ next
, आप सही URL की ओर संकेत करते हैं।
यदि आपने अपने स्वयं के url को परिभाषित किया है (और सामान्य जेनरिक url को आयात नहीं किया है) और मानक django सामान्य विचारों का उपयोग कर रहे हैं, तो आप पथ में बस (template_name = 'example.html') जोड़ सकते हैं।
path('logout/',auth_views.LogoutView.as_view(template_name='homepage.html'),name="logout")
इसे आप प्रोजेक्ट सेटिंगहोम फ़ाइल में जोड़ें
LOGOUT_REDIRECT_URL = '/'
आप अपना URL '' के बीच लिख सकते हैं, मैं लॉगआउट डिफ़ॉल्ट रीडायरेक्ट के लिए अपने सूचकांक पृष्ठ का उपयोग करता हूं