一次轉發請求作用域。
會話作用域。
應用程序作用域
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