【发布时间】:2021-05-03 19:12:29
【问题描述】:
我的模板中有一个脚本,它尝试在 onbuttonclick 事件期间将数据发送到 django 视图。我的问题是该请求似乎没有进入视图。浏览器控制台可以正确地看到请求,但是当我调用 request.is_ajax() 时,django 视图甚至不返回 true。
request.method 返回 GET 而不是 POST,并且数据为空。无论请求类型如何,此行为都是持久的。
html
<a onclick="setGetParameter(this)" pid="some_id">Some Text</a>
.js
<script>
var csrftoken = Cookies.get('csrftoken');
function setGetParameter(el){
var stuff = $(el).attr('pid');
$.ajax({
type: 'POST',
headers: { "X-CSRFToken": csrftoken },
url: '/view_url/',
data: {'datatopass': stuff},
success: function(response){
alert(response);
}
});
}
</script>
urls.py
path('view_url/', views.test),
path('', views.home),
views.py
def test(request):
output = request.is_ajax()
return HttpResponse(output)
【问题讨论】:
标签: python django ajax web-deployment