Django网页框架实时数据

时间:2016-12-30 19:31:02

标签: python mysql django

我正在编写一个显示来自mysql数据库的数据的Django项目, 数据库不断更新,如何在view.py中不断发送数据。我试过看了很多模块,我遇到了芹菜,龙卷风,Django频道,但它们主要是为聊天应用编写的,我也尝试过将Node.js与Django一起使用。但是Django中简单数据更新的真正解决方案是什么?

现在我只是在我的html文件中使用这个代码刷新页面并获取最后的数据,但问题是它使网站运行速度很慢:

<script>

    var myVar = setInterval(ReLoad , 2000); //refresh every 2 seconds

    function ReLoad() {
        $("#live").load(document.URL + " #live");
    }

</script>

2 个答案:

答案 0 :(得分:1)

您可能想要查看ajax(异步javascript)。要在页面上更新某些内容,您通常需要刷新页面。如果只需要在后台刷新页面的一部分,则可以使用ajax。你可以查看google的角度js和facebook的React js库。他们开发了这些,所以你可以得到一个没有刷新的通知我知道你可以轻松地将它整合到django中(不太确定如何)。

希望这可以为您提供一些关于从何处出发的线索!

答案 1 :(得分:0)

虽然你绝对可以使用网络套接字(正如Joran所推荐的那样),但我建议推送通知。你可以查看GCM和这个Django应用程序:

https://github.com/jleclanche/django-push-notifications

Django的一个问题是你需要跳箍来使用网络套接字。如果您有兴趣,可以查看这个应用程序:

https://django-websocket-redis.readthedocs.io/en/latest/running.html

您还可以考虑使用NodeJS特别为websocket提供服务,我认为这将是一个更简单的解决方案,迫使Django使用Websocket。

我希望这有帮助!