خروج از سیستم (Logout)
سلام
اولین کار این است که مسیر جدید را در urls.py اضافه کنیم.
myproject/urls.py
from django.conf.urls import url from django.contrib import admin from django.contrib.auth import views as auth_views from accounts import views as accounts_views from boards import views urlpatterns = [ url(r'^$', views.home, name='home'), url(r'^signup/$', accounts_views.signup, name='signup'), url(r'^logout/$', auth_views.LogoutView.as_view(), name='logout'), url(r'^boards/(?P<pk>\d+)/$', views.board_topics, name='board_topics'), url(r'^boards/(?P<pk>\d+)/new/$', views.new_topic, name='new_topic'), url(r'^admin/', admin.site.urls), ]
تابع view را از ماژول توسعۀ جنگو (Django’s contrib module) در برنامه وارد کردیم. برای جلوگیری از تصادم هم آن را به نام مستعار auth_views تغییر می دهیم. توجه شود که این ویو با موارد قبلی کمی متفاوت و به این شکل است: ()LogoutView.as_view. این ویو بر اساس مفهوم کلاس و شی گرایی ساخته شده است. تا به این لحظه، ویوهای ساخته شده صرفاً از نوع توابع پایتون بوده است. ویوهای کلاسی دارای قابلیت های بیشتری نسبت به ویوهای تابعی دارند که بعدا در مورد آن صحبت خواهیم کرد.
مقدار زیر را به انتهای فایل settings.py اضافه کنیم.
myproject/settings.py
LOGOUT_REDIRECT_URL = 'home'
با این کار، کاربر بعد از خروج از سیستم به آدرسی که مشخص می کنیم –در اینجا صفحۀ خانه- انتقال می یابد.
خوب! با این کار همه چیز آماده است. کافی است به آدرس زیر مراجعه کنیم تا بلافاصله از سیستم خارج شده و به صفحۀ خانه منتقل شویم. در ادامه می خواهیم آدرس این صفحه را در منوی بازشوندۀ مربوط به کاربر اضافه کنیم.
http://127.0.0.1:8000/logout
ترجمۀ اختصاصی توسط تمدن
مطلب بعدی: نمایش منویی خاص برای کاربران معتبر
مطلب قبلی: بهبود قالب ثبت نام
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگو شرکت کنید؟نظری بدهید!