我正在通過'Django 1.0網站開發'的方式,並在使用窗體時遇到問題。服務器抱怨有關'csrf'的內容。我可以通過在form-tag後面加上{% csrf_token %}
來解決它。我已經閱讀了djangoproject.com上的文檔,但我不得不承認,我並不完全理解這裏發生了什麼。我不使用中間件類。http 403與django和AJAX錯誤
真正的問題出現在我碰到ajax的時候。我跟着書中的指示信,但服務器就開始抱怨:
"POST /save/?ajax HTTP/1.1" 403 2332
下面是可能導致故障代碼:
function bookmark_save() {
var item = $(this).parent();
var data = {
url: item.find("#id_url").val(),
title: item.find("#id_title").val(),
tags: item.find("#id_tags").val()
};
$.post("/save/?ajax", data, function (result) {
if (result != "failure") {
item.before($("li", result).get(0));
item.remove();
$("ul.bookmarks .edit").click(bookmark_edit);
}
else {
alert("Failed to validate bookmark before saving.");
}
});
return false;
}
「/保存/ & ajax'正在處理中
if ajax:
return render_to_response('bookmark_save_form.html', variables)
這裏的bookmark_save_form.h TML:
<form id="save-form" method="post" action="/save/">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="save" />
</form>
據我瞭解的東西,我必須通過csrf_token與POST請求。但我不知道如何。
任何建議,這將是偉大的。
天上,哎喲。我遇到過這麼多次。讓我看看是否可以從我之前的一個項目中獲得一些代碼來幫助你。 – TheChes44
另外,爲標籤添加python,你會得到更多的意見和幫助解決問題。 – TheChes44
你的urls.py文件對於這種情況如何? –