如何使用django实现某页面的自动刷新?(尽可能不借助前端方式实现)

有一流日志处理程序,会将处理后的一些数据插入到数据库中。然后用django做了一个运维工作平台,其中某一页的view视图就是打开这个页面的时候从数据库读取数据,然后传到模版上,然后进行渲染。但是这个数据是要用作监控的,所以需要网页每5秒或者10秒就刷新一次,或者重新执行一遍view.py中的函数。
这边小公司设的点,没有前端工程师,只能通过自己寻找办法,通过django本身可以解决这个问题吗?

阅读 21k
3 个回答

百度上面的答案:
主要是网页中加入如下代码:
<script language="JavaScript">

function myrefresh() {
    window.location.reload();
}
setTimeout('myrefresh()', 1000); //指定1秒刷新一次

</script>
网页就会定时刷新;

一般的HTTP请求,都是由客户端主动发起,服务端作出相应。Django作为服务器端后台开发框架,没法实现你说的功能。

你可以在前端中设置js定时轮询;也可以像@prolifes给的链接中一样,使用websocket。但都需要些前端支持,纯后端无法实现。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题