所以我有了一個粗略的結構是這樣一個會話變量:刪除會話變量的Django
request.session['selected_courses'] = {
'2': {'num_spots_available': 3,
attendees = [ {'first_name': 'Jon', 'last_name': 'Kan'}, ... ]}
...
}
每個按鍵下的「selected_courses」是課程ID。
我需要從所選課程中刪除與會者i.e {'first_name': 'Jon', 'last_name': 'Kan'}
。 當我嘗試這樣做時,會話實際上並未刪除與會者。當我嘗試刪除另一位與會者時,即使我的代碼先前已將其刪除,以前的與會者也會立即彈出會議!但是,重新運行此代碼後,它最終會從會話中刪除與會者。
我在views.py代碼(我拉出來的數據POST的,因爲我在做一個AJAX請求,並知道數據是不是由用戶輸入):
course_id = str(request.POST['course_id'])
first_name = str(request.POST['first_name'])
last_name = str(request.POST['last_name'])
request.session['selected_courses'][str(course_id)]['attendees'] = [a for a in request.session['selected_courses'][str(course_id)]['attendees']
if a['first_name'] != first_name or a['last_name'] != last_name]
request.session.modified =True
所以我試圖請求.session.modified屬性(如上所示)與SESSION_SAVE_EVERY_REQUEST = True
一起工作。 (請注意:我對Django仍然很陌生)。
謝謝您的回答丹尼爾!是的,所以我嘗試了你的解決方案,但它仍然沒有刪除與會者。我會嘗試更改我的會話數據結構,並讓您知道它是否仍然無效。 –