在Django 1.3中,你現在必須使用csrf甚至與Ajax。 我使用jquery,現在我想將csrf標記添加到$ .post。我怎樣才能做到這一點?我對jquery不是很熟練,所以對它的描述很好。
這是一個評級的應用程序和帖子發送時,點擊一個星星。 我看過django docs,但不明白在我的情況下做什麼。我的代碼如下:
$(function() {
$("#avg").children().not(":input").hide();
$("#rating-widget").children().not("select").hide();
$caption = $("<span/>");
$("#avg").stars({captionEl: $caption});
$("#rating-widget").stars({
inputType: "select",
cancelShow: false,
captionEl: $caption,
callback: function(ui, type, value){
--------------> $.post($("#rating-widget").attr("action"), {score: value}, function(data){
});
}
});
$caption.appendTo("#rating-widget");
});
應該說JavaScript不在模板中,而是在靜態文件中。 它是最好把它放在一個模板,所以我可以使用{{ csrf_token }}
在此先感謝!
我剛剛發現[編輯版本](http://stackoverflow.com/questions/5100539/django -csrf-check-failing-with-an-ajax-post-request)是他們使用ajaxSetup。它爲我工作:)不知道這是那麼容易!謝謝! – tmpethick 2011-06-02 08:43:25