python

超轻量级php框架startmvc

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

更新时间:2020-07-23 04:18:01 作者:startmvc
Django结合ajax进行页面实时更新踩过的坑简单记录一下在使用Django、echarts和ajax实现数据动态

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进行页面实时更新的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

Django ajax 页面 更新