Django+Ajax异步刷新/定时自动刷新实例详解
作者:Halo-Z 发布时间:2023-11-29 11:28:15
标签:django,ajax,自动刷新
前言
分享一下最近在学习Django过程中,遇到和解决的一些有趣的方法和问题
一、Django是什么?
Django也不用在过多的去介绍了。使用python进行web开发的基本上都在用着框架,反正大家都在用,哈哈哈
二、Ajax异步刷新
1.jQuery语法下的Ajax运用
代码如下(示例):
$.ajax(
{
type:"GET",
url:"/ajax_loadavg",
dataType:"json",
success:function (data) {
json_data = data
}
当然大家别忘了在页面引入jQuery的源
<script src="{% static 'Privilege/vendor/jquery/jquery.min.js'%}"></script>
通过这种方式,可以实现异步数据更新,做到只刷新部分页面而不需要整个页面进行刷新!!!
2.定时刷新页面的样例
这里面使用chartist响应式图标作为案例,设定每15s中对图表进行一次刷新。
HTML5代码示例如下:
<div id="headline-chart" class="ct-chart"></div>
jQuery代码示例如下:
setInterval(function () {
$.ajax(
{
type:"GET",
url:"/ajax_loadavg",
dataType:"json",
success:function (data) {
json_data = data
data = {
labels: [0, 10, 20, 30, 40, 50, 60],
series: [
[1, 2, 3, 4, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0],
]
};
options = {
height: 300,
showArea: true,
showLine: false,
showPoint: false,
fullWidth: true,
axisX: {
showGrid: false,
showLabel: false
},
lineSmooth: false,
};
new Chartist.Line('#headline-chart', data, options);
}
},15000)
Django 视图(view)代码如下:
注意:此处只是展示Ajax与Django如何进行交互,Ajax获取的JSON数据并未进行利用!
@csrf_exempt
def ajax_loadavg(request):
if request.method == 'GET':
context = {'output_loadavg':output_loadavg}
return HttpResponse(json.dumps(context))
url配置
path('ajax_loadavg/', views.ajax_loadavg, name='ajax_loadavg'),
3.展示效果
来源:https://blog.csdn.net/qq_36845718/article/details/125553615


猜你喜欢
- MySQL 字符编码集中有两套 UTF-8 编码实现:utf8 和 utf8mb4。如果使用 utf8 的话,存储 emoji 符号和一些比
- 概述我在教学和实际设计中的一些心得。就不长篇大论了!让大家省些时间,捞干的。尽量通俗易懂。想知道怎样设计标志,就要知道什么是标志?标志:外来
- 目录一.预览1.启动2.执行查询二.源代码1.GUI2.Get_Attr三.总结Hello,大家好,我来敷衍你们了 [捂脸],今天还是用Tk
- 下面看下通过vue提供的keep-alive减少对服务器的请求次数VUE2.0中提供了一个keep-alive方法,可以用来缓存组件,避免多
- 根据微软论坛作者的英文解释,.NET framework 4.0 安装失败回滚貌似是因为“msvcr100_clr0400.d
- 本文研究的主要是Python使用requests及BeautifulSoup构建一个网络爬虫,具体步骤如下。功能说明在Python下面可使用
- label转onehot的很多,但是onehot转label的有点难找,所以就只能自己实现以下,用的topk函数,不知道有没有更好的实现on
- Exec sp_droplinkedsrvlogin ZYB,Null --删除映射(录与链接服务器上远程登录之间的映射) Exec sp_
- 文本框 textarea 限制输入文字个数的的javascript代码,我们经常在评论留言页面我们需要在客户端限制访客的留言长度,当然最好我
- 在SQL查询分析器执行以下代码就可以了。01.declare @t varchar(255),@c varchar(255) 02.decl
- 目录前言1-下载python3.8压缩包2-解压缩安装包3-安装依赖工具4-安装python3.85-修改python2软链接6-修改yum
- Python中,列表是可以进行修改的:赋值、删除元素、分片等等。在给列表添加元素时,有两个常见的方法:append和extend。appen
- 我用 ip=Request.ServerVariables
- 如下所示:df = df[df['cityname']==u'北京市']记得,如果用的python2,一定要
- 本文主要介绍我在利用Django写文章时,采用的注册方法。首先说一下整体逻辑思路:•处理用户注册数据,•产生token,生成验证URL,•发
- 前言在安装MySQL的时候会默认初始化几个MySQL运行所需的数据库:mysql, sys, information_schema, per
- 近日,2018年最具就业前景的7大编程语言排行榜出炉了。这次的编程语言排行榜是由CodingDojo(编码道场)发布。在此次的最有“钱”途的
- /** * @Purpose: Mysql数据库访问类 * @Package: * @Author: lisen@sellingclub.c
- vuex状态刷新网页时数据被清空问题vuex状态管理,在网页刷新数据被清空的解决方法。在main.js中写入下面的代码段(亲测有效)//刷新
- 二级联动在一般的网页中随处可见,一般是地址,比如点击浙江省,随后出现的是杭州市,嘉兴市;点击北京省出现的是朝阳,海淀,而不是出现杭州,嘉兴。