設定するajax呼び出しがあります
request.user.my_field = value
ajax が成功すると、ビュー内の機能が更新される location.reload(True)
ことを期待してページをリロードしますが、古い値が含まれています。request.user.my_field
どうすればこれを修正できますか?
編集
ajax 呼び出し:
$.ajax({
type: 'POST',
url: '{% url editor_select %}',
data: {'editor_type':$(this).val(),
success: function(response_data) {
location.reload(true);
}
}
});
最初のビュー:
def editor_select(request):
"""
called when user changes editor type to post question/answer
"""
editor_type = CharField().clean(request.POST['editor_type'])
request.user.editor_type = editor_type
request.user.save()
2 番目のビュー:
def second_view(request):
print 'ask, editor_type:', request.user.editor_type
AuthenticationMiddleware (request.user を request に設定する) が、ajax 呼び出しと location.reload() の間に呼び出されないことがわかりました。
ええと?