首先,我要感謝您收看我的帖子! 我爲企業項目使用了Django兩個月。而我是一種法國noob在網絡developpement和django發展:Ddjango請求不包含密鑰
這裏是我的問題:在一個視圖im設置一個鍵在request.session,但後render_to_response和ajax查詢這個鍵只是消失:(
這裏是我設置的關鍵
def check(request):
if request.method == 'POST':
RequestContext(request)
try:
m = MsGnlMember.objects.get(mbr_nom=request.POST['username'])
except (ObjectDoesNotExist):
return render_to_response('login.html', {'BAD': True, 'username' : 'Unknown User'})
if m.mbr_mdp == request.POST['mdp']:
Here ===> request.session['MBR_INSTANCE'] = m
return index(request)
def index(request):
username = request.session["MBR_INSTANCE"].mbr_nom
request.session.modified = True # does not fix my problem
getNote = GetNoteForm()
saveNote = SaveNoteForm()
search = SearchForm()
return render_to_response('index.html', {'FORM_GETNOTE' : getNote,
'FORM_SAVENOTE' : saveNote,
'FORM_SEARCH' : search,
'USERNAME' : username},
context_instance=RequestContext(request))
此代碼工作得很好(用戶名是在根據查詢結果index.html的改變),但功能時,即時通訊頁面的index.html即時通訊啓動ajax查詢如下:
def arbo_get_acts(request):
if request.method == 'POST' and request.is_ajax():
if "MBR_INSTANCE" in request.session:
acts = MsWriAct.objects.filter(act_mbr=request.session['MBR_INSTANCE'])
acts_serialised = serializers.serialize('json', acts)
return HttpResponse(acts_serialised, 'application/json')
else:
acts_serialised = {}
return HttpResponse(acts_serialised, 'application/json')
,我從來沒有在進入我的if語句:'(SNIF SNIF 所以請給我解釋一下什麼即時做錯了還是什麼我不明白
編輯:好吧大家,昨天我在家裏測試我的代碼和它工作得很好。在工作中,它繼續失敗。經過漫長的旅程和辛苦的勞動,我發現。當我在想 「爲什麼它在家裏工作而不在工作時」它傾斜了。在家我使用Linux,在工作窗口。 ........ 首款谷歌搜索: 這裏是我的恥辱:https://code.djangoproject.com/ticket/9084 基於文件的會話沒有任何數據存儲在Windows
T_T如何發展鬆動兩天
檢查是否進入arbo_get_acts函數。 這是ajax,所以你無法直接看到服務器響應 - 在Firebug中檢查它。這可能是一些CSRF驗證問題。 – disorder 2012-01-13 14:50:38
感謝名單這裏回答我是輸出: POST HTTP://本地主機:8000 /指數/ arbo_get_acts/ \t 200 OK \t \t 175ms之間\t 的jQuery .... min.js(LIGNE 18) 恩têtesPost REPONSE 的Content-Length 內容類型\t應用/ JSON 日期\t星期五,2012 14點59分54秒GMT 服務器\t WSGIServer/0.1的Python/2.7 1月13日2 Set-Cookie \t sessionid = c531a3b804eb2c4d6bf591e826ac387d; expires = Fri,2012年01月27日14:59:54 GMT;最大年齡= 1209600; Path =/ Vary \t Cookie – hdcos 2012-01-13 15:02:52
嗯! HttpResponse應該返回任何內容不是嗎? 可能'request.is_ajax()'返回False?把一些打印到調試請求和request.session可能是。我從來沒有在django中直接使用會話 - 所以如果情況屬實,我無法幫助你。 – disorder 2012-01-13 18:45:08