Django结合ajax进行页面实时更新的例子

yipeiwu_com6年前Python基础

Django结合ajax进行页面实时更新踩过的坑

简单记录一下在使用Django、echarts和ajax实现数据动态更新时遇到的一些坑:

1、url配置错误,路径没有找对(最后使用绝对路径)

2、后台(view.py)传的数据类型不对导致

3、没有配置js源,根本发不出ajax请求(第一次接触js,根本不知道这个大坑。。)

4、不知道哪里报错可以根据XMLHttpRequest.status、XMLHttpRequest.readyState和textStatus进行分析

5、(现在还没弄明白的)在view.py)中向前端传数据的函数需要加上@csrf_exempt,不然根本不可能成功(在这个坑找了好久,科学上网才查到)

1、ajax参数:

 $.ajax({
      url:'http://127.0.0.1:8000/hiapp/goData/',
      type:"Post",
      data: {},
      dtype:'list',
     success: function (da) {
         alert("success")
          },
     error: function (XMLHttpRequest, textStatus,errorThrown) {
      alert("fail "+XMLHttpRequest.status+" "
          XMLHttpRequest.readyState+" "+textStatus);}

2、view.py示例

@csrf_exempt
def goData(request):
  if request.method=='POST' :
    a = range(100)
    list1=random.sample(a,7)
    list2=random.sample(a,7)
    list3=random.sample(a,7)
    return
      HttpResponse(json.dumps({"list1":list1,"list2":list2,"list3":list3}))

生成了三组随机数,没有报错的话会传给ajax的success

3、url.py

urlpatterns = [


  url(r'^goData/$',views.goData,name='goData'),
]

4、最后就是要 记得引入相应的文件(js和echarts)

以上这篇Django结合ajax进行页面实时更新的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python selenium 对浏览器标签页进行关闭和切换的方法

1.关闭浏览器全部标签页 driver.quit() 2.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页A) driver.close() 3.关闭当前标签页(从标签...

Caffe均值文件mean.binaryproto转mean.npy的方法

mean.binaryproto转mean.npy 使用Caffe的C++接口进行操作时,需要的图像均值文件是pb格式,例如常见的均值文件名为mean.binaryproto;但在使用p...

python 正则表达式 概述及常用字符

1.元字符: . 它匹配除了换行字符外的任何字符,在 alternate 模式(re.DOTALL)下它甚至可以匹配换行 ^ 匹配行首。除非设置 MULTILINE 标志,它只是匹配字符...

跟老齐学Python之深入变量和引用对象

跟老齐学Python之深入变量和引用对象

在《永远强大的函数》那一讲中,老齐我已经向看官们简述了一下变量,之后我们就一直在使用变量,每次使用变量,都要有一个操作,就是赋值。本讲再次提及这个两个事情,就是要让看官对变量和赋值有一个...

windows下添加Python环境变量的方法汇总

如果安装的时候没有选择Add Python.exe to Path 导致在命令提示符下执行python 提示 'python' 不是内部或外部命令,也不是可运行的程序或批处理文件。 可...