这个问题已经有一个答案在这里:

我想代码的更改立即生效期间的发展。我怎么可以检测更改的文件和将它们重新装载在运行Python(2.7)应用程序?

编辑:

经过阅读网页链接由'伊沃*范德Wijk,我认为它将是最好重新启动该网络应用程序时代的变化状Django。所以实际问题是: 如何监测文件的修改?

有帮助吗?

解决方案

这个问题已经问过 一个 数量 时间

你可以使用重装(模块)用于这一点,但要注意的讨厌的副作用。例如,现有的编码,将根据原始代码,不会神奇地得到新的属性或baseclasses加。

其他提示

我想同样的效果我的一些蟒蛇脚本,所以我去和取得的脚本SourceChangeMonitor.py.你可以找到它的指示 在这里,.如果你只是想剧本, 在这里, 是一个直接链接

这没有意义对于大多数应用程序,因为你将得到副作用通过使用 reload.加上花费的时间上的代码检测到的变化而重新加载的所有模块有可能被花费在只是重新启动的应用程序。这是非常复杂的,如果你进口很多的模块或有一个项目,其中包含许多子模块。

在某些情况下,这是一个好主意。Django网框架提供的发展服务器(manage.py runserver)是自动重新加载改变了模块。看看 django.utils.autoreload -它测试所有Python文件进行修改以使用的修改时间的文件。如前所述,这仅仅是一个好主意,对于某些应用程序。网的应用是有点无国籍,并因此可以重新加载有几个没有副作用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top