Python Django

一次轉發請求作用域。

會話作用域。

應用程序作用域

Session(一個模塊)

在gjango裏使用session

1、 installed_apps

2、 中間件。

 3.設置存儲形式。

4、引用 resquest.session.

 

Django session 的設計原理

1如果用戶是第一次請求

判斷客戶是否第一次請求,就看客戶端ie是否保存session cookie。

創建session model

生成一個key session id 隨機的一個字符串 uuid

Uuid是隨機生成id永久不重複的字符串。保存到你的session_engine指定的位置。 保存到cookie中,在用戶的瀏覽器中。

如果第二次以上的請求,用戶端ie都會都會自動提交cookie到django,django中利用你的配置的sessionmiddleware中,間件激活session利用cookie中的sessionid到你的session_engine指定的位置讀取session model並設置到request的session屬性上。

正式因爲這樣的才能在你的view裏面通過request.session中使用session能力。

Session本身就是一個dict字典

Session在存數據必須支持序列化json.

第一步:在pydlogsys/sittings.py中有沒有 INSTALLED_APPS 'django.contrib.sessions'

第二步:在pydlogsys/sittings.py MIDDLEWARE 要有中間鍵'django.contrib.sessions.middleware.SessionMiddleware'

在設置存蓄形式按Ctrl+alt+r 輸入migrate session 創建Django_session數據庫


第四步:bloguser/views.py中修改登陸成功後的跳轉路徑

在bloguser/urls.py中修改 path('login',login),爲 path('login',login,name='login'),

在數據庫中的django_session表中留下記錄,下次登陸就會顯示你的信息

在templates/welcome.html中修改後顯示‘退出’,未登陸顯示‘登陸’

在bloguse/views.py中創建logout函數,在登陸成功後顯示‘退出’,點退出的時候返回 welcome


創建連接

在bloguser/views.py中添加a和b兩個函數

在bloguser/urls,py中添加路徑

在templates/welcome.html中添加兩個鏈接

在瀏覽器中輸入http://127.0.0.1:8000/user/login


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章