新聞中心
默認(rèn)情況下,Django 只在會話被修改后才會向會話數(shù)據(jù)庫保存會話——也就是說,是否已經(jīng)分配或刪除了它的任何字典值:

從網(wǎng)站建設(shè)到定制行業(yè)解決方案,為提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作服務(wù)體系,各種行業(yè)企業(yè)客戶提供網(wǎng)站建設(shè)解決方案,助力業(yè)務(wù)快速發(fā)展。創(chuàng)新互聯(lián)建站將不斷加快創(chuàng)新步伐,提供優(yōu)質(zhì)的建站服務(wù)。
# Session is modified.
request.session['foo'] = 'bar'
# Session is modified.
del request.session['foo']
# Session is modified.
request.session['foo'] = {}
# Gotcha: Session is NOT modified, because this alters
# request.session['foo'] instead of request.session.
request.session['foo']['bar'] = 'baz'
在上面例子的最后一個例子中,我們可以通過在會話對象上設(shè)置 ?modified ?屬性來明確地告訴會話對象它已經(jīng)被修改:
request.session.modified = True
要想改變這個默認(rèn)行為,可以設(shè)置 ?SESSION_SAVE_EVERY_REQUEST ?為 ?True ?。當(dāng)設(shè)置為 ?True ?時(shí),Django 會根據(jù)每個請求將會話保存到數(shù)據(jù)庫中。
注意,僅在會話被創(chuàng)建或修改時(shí)發(fā)送會話 ?cookie ?。如果 ?SESSION_SAVE_EVERY_REQUEST ?為 ?True ?,則會話cookie將在每次請求時(shí)發(fā)送。
同樣地,每次發(fā)送會話 cookie 時(shí)都會更新會話 cookie 的 ?expires ?部分。
如果響應(yīng)狀態(tài)代碼為 500,會話不會被保存。
分享文章:創(chuàng)新互聯(lián)Django4.0教程:Django4.0使用會話-當(dāng)保存會話時(shí)
鏈接地址:http://fisionsoft.com.cn/article/dpdjpeh.html


咨詢
建站咨詢
