我正在尝试查看目录中.py文件的更改。我经历了现有的解决方案。我对django库如何解决此问题感到好奇。文件更改后,开发服务器将重新启动。
可以在中找到该代码django.utils.autoreload。自动重新加载器使用一个单独的线程来监视已导入的任何python模块以及任何翻译文件。
如果可用inotify,则Django会使用它来监听更改事件。否则,它将每秒检查每个文件的时间戳。如果有任何更改,该过程将重新启动。
Django的autoreloader 可能不是最好的灵感来源。更好的选择可能是Watchman(具有适当的python绑定)或纯Python替代Watchdog。
快进到 2019 年 4 月:
随着Django的2.2 pywatchman作为一部分守望者,将支持和pyinotify中(即自2015年中期未维护被删除):
如果您使用 Linux 或 MacOS 并同时安装
pywatchman和Watchman服务,内核信号将用于自动重新加载服务器(而不是每秒轮询文件修改时间戳)。这为大型项目提供了更好的性能、缩短了代码更改后的响应时间、更强大的更改检测并降低了功耗。
来源:django-admin
将 Watchman 与包含大型非 Python 目录(如 )的项目一起使用时
node_modules,建议忽略此目录以获得最佳性能。
有关watchman documentation如何执行此操作的信息,请参阅。
| 归档时间: |
|
| 查看次数: |
1263 次 |
| 最近记录: |