基於django的視訊點播網站開發-step8-後臺登入功能
從本講起,我們會介紹後臺管理系統的開發,後臺管理,主要是對資料庫中的資料進行增、刪、改、查的操作,滿足網站管理員對網站的管理與維護的需求。
其實,django自帶的也有一個後臺管理系統(/admin),但是自帶的後臺非常簡陋,無論是介面,還是功能上,都無法滿足使用者的需求,因此,我們自己開發了一套後臺管理系統。
測試賬號: admin123
密碼: admin123
後臺管理屬於一個單獨的模組,我們建立一個新的應用,命名為myadmin
python3 manage.py startapp myadmin
好,之後的功能都是基於myadmin來實現的。
因為前面我們已經建立了user模組,所以此處的登入功能是基於之前的user模組來實現的。
首先在myadmin/urls.py中新增登入和登出的路由
from django.urls import path
from . import views
app_name = `myadmin`
urlpatterns = [
path(`login/`, views.login, name=`login`),
path(`logout/`, views.logout, name=`logout`),
]
我們來寫login函式
def login(request):
if request.method == `POST`:
form = UserLoginForm(request=request, data=request.POST)
if form.is_valid():
username = form.cleaned_data.get(`username`)
password = form.cleaned_data.get(`password`)
user = authenticate(username=username, password=password)
if user is not None and user.is_staff:
auth_login(request, user)
return redirect(`myadmin:index`)
else:
form.add_error(``, `請輸入管理員賬號`)
else:
form = UserLoginForm()
return render(request, `myadmin/login.html`, {`form`: form})
這裡我們使用了user模型中的一個欄位is_staff,用它來表示是否是管理員,所以通過if user is not None and user.is_staff
來判斷管理員,如果是管理員,則auth_login登入並redirect跳轉到主頁。
下面我們來實現logout函式
def logout(request):
auth_logout(request)
return redirect(`myadmin:login`)
登出後,直接跳轉到login頁面。
效果展示
相關文章
- 基於django的視訊點播網站開發-step10-後臺評論管理功能Django網站
- 基於django的視訊點播網站開發-step4-首頁功能Django網站
- 基於django的視訊點播網站開發-step5-詳情頁功能Django網站
- 基於django的視訊點播網站開發-step2-搭建環境Django網站
- 基於django的視訊點播網站開發-step1-專案介紹Django網站
- 基於HDPHP的視訊播客開發視訊PHP
- 網站修改登入密碼?如何修改網站後臺資訊?網站密碼
- 基於SpringBoot從零構建部落格網站 - 整合ehcache和開發註冊登入功能Spring Boot網站
- DedeCMS網站安裝成功後點選登入網站後臺報404錯誤怎麼辦?網站
- WordPress入門03-如何登入WordPress網站後臺網站
- 視訊點播開發者實戰:視訊水印的基本使用
- 視訊私有云實戰:基於Docker構建點播私有云平臺Docker
- PHP視訊解析網站原始碼+後臺PHP網站原始碼
- 【VIP視訊網站專案上線】基於Nodejs的Express框架開發的VIP視訊網站專案及完整程式碼分享...網站NodeJSExpress框架
- ThinkPHP開發線上視訊網站原始碼,後臺完整許可權管理PHP網站原始碼
- [功能外掛] 基於 Laravel 開發的小程式登陸功能Laravel
- 【功能外掛】基於 Laravel 開發的小程式登陸功能Laravel
- 易優eyoucms網站後臺登入驗證碼是否不用,也可以登入?網站
- 易優網站後臺登入密碼怎麼修改網站密碼
- 基於Flask開發網站 -- 前端Ajax非同步上傳檔案到後臺Flask網站前端非同步
- django 開發網站-建立 django 專案Django網站
- Node + Express 後臺開發 —— 登入標識Express
- 怎麼查詢登陸網站後臺?(如何查詢網站後臺地址)網站
- 基於 Hyperf 開發的高效能站點
- 基於thinkphp 開發的兼職網站PHP網站
- PbootCMS網站後臺登入頁面樣式怎麼修改boot網站
- 網站返回頂部功能視訊網站
- 電商後臺管理系統——登入功能
- 網站後臺管理如何修改?網站後臺修改自己資訊?網站
- 基於nginx-rtmp搭建點播平臺Nginx
- C#開發——網站應用微信登入開發C#網站
- 基於 Hyperf 開發的前後分離管理後臺
- 基於adminlte的後臺管理系統開發
- 如何登陸網站後臺伺服器網站伺服器
- 帝國cms網站忘記後臺登入認證碼、登入安全答案怎麼辦?網站
- 深入Vue後臺管理開發之登入驗證Vue
- 實現基於JWT的Token登入驗證功能JWT
- 基於commlib的超快速開發工具 dalin---一分鐘搞定線上後臺和網站網站