首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用ajax将数据发布到django视图不起作用

使用ajax将数据发布到django视图不起作用
EN

Stack Overflow用户
提问于 2018-10-07 19:23:04
回答 1查看 51关注 0票数 0

我有一个视图,我想使用ajax方法发布数据,但它没有进入视图来打印内容。

我的javascript代码:

代码语言:javascript
运行
AI代码解释
复制
$("#id").click(aa);
var aa= function() {
var id= $("#id");

$.ajax({
    url: "ajax/id",
    method: "POST",
    data: { user: id, csrfmiddlewaretoken: csrftoken },
    context: document.body
}).done(function(data) {

    alert("Success");

}).fail(function(returnedText) {
    console.log(returnedText.responseText);
});

};

我的Django视图:

代码语言:javascript
运行
AI代码解释
复制
def id(request):
    print("aa");
    users = request.POST['user']

我的URL:

代码语言:javascript
运行
AI代码解释
复制
path('/ajax/id', views.id, name='id')
EN

回答 1

Stack Overflow用户

发布于 2018-10-07 20:29:54

您可以改用请求标头

代码语言:javascript
运行
AI代码解释
复制
const Cookies = require('js-cookie');

(($) => {
  const csrfSafeMethod = method => /^(GET|HEAD|OPTIONS|TRACE)$/.test(method);
  $.ajaxSetup({
    beforeSend(xhr, settings) {
      if (!csrfSafeMethod(settings.method) && !this.crossDomain) {
        xhr.setRequestHeader('X-CSRFToken', Cookies.get('csrftoken'));
      }
    },
  });
})(window.jQuery);

错误是url使用url: "/ajax/id",而不是url:"ajax/id",并且直接访问POST dict id也是内置函数尝试重命名您的函数以避免遮盖内置函数。

代码语言:javascript
运行
AI代码解释
复制
users = request.POST.get('user')

你的path不会

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52692042

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文