我正试图以下列方式使用Django。
我有一个在后端运行的命令行实用程序,我们称之为foo
。
当至少有一个人在django页面foo
上时,我希望foo.com/kungfoo
能够运行。
我还需要在离开网页时终止脚本。哪个可以通过Javascript。
但是,如何确定多人是否同时查看该页面。理想情况下,如果页面上有其他人,我不希望foo
被杀死。
我能想到的唯一方法是让Javascript每分钟左右向Django推送I'm still here
状态。然后每分钟通过芹菜运行一个Python脚本,并检查Django是否有I'm still here
。如果foo
正在运行,则请终止foo
。
有更好的方法吗?
我知道这个问题很广泛,所以我会更具体一点。有没有办法让Django计算查看网页的人数,并在该数字为0时运行脚本。
答案 0 :(得分:1)
您可以将django-channels与ReconnectingWebSocket一起使用,这样您就知道用户何时离开该页面,或者 - 当您的情况下更有帮助 - 当页面上没有用户时。