向现有python进程动态添加新文件

向现有python进程动态添加新文件,python,django,Python,Django,我们在一个项目中使用Django。在1.7+之前,我们能够在执行setup.py时动态地将文件拉入python环境。例如,我们有以下目录结构: /foo/bar /foo/bar/__init__.py /foo/bar/my_functions.py 我们的Django项目对这些文件一无所知。当web服务器启动并读取setup.py时,我们将查看一个配置,该配置告诉我们在何处查找要添加到环境中的文件。同样,我们假设/foo/bar在我们的配置中是动态加载的。然后,我们将使用import\u

我们在一个项目中使用Django。在1.7+之前,我们能够在执行setup.py时动态地将文件拉入python环境。例如,我们有以下目录结构:

/foo/bar
/foo/bar/__init__.py
/foo/bar/my_functions.py
我们的Django项目对这些文件一无所知。当web服务器启动并读取setup.py时,我们将查看一个配置,该配置告诉我们在何处查找要添加到环境中的文件。同样,我们假设
/foo/bar
在我们的配置中是动态加载的。然后,我们将使用
import\u module()
导入它,以便
/foo/bar
下的任何内容基本上成为项目的一部分并可以使用。它基本上是一个“插件”特性

在Django>=1.7之后,这会导致巨大的问题,主要是:

django.core.exceptions.AppRegistryNotReady: The translation infrastructure
cannot be initialized before the apps registry is ready. Check that you
don't make non-lazy gettext calls at import time.
它还限制了我们动态添加新文件的能力,因为您必须始终将它们放置到位并重新启动web服务器。例如,您无法使用“上载插件”页面向服务器添加新文件


有没有一种方法可以在web服务器启动期间以及启动后添加这样的文件而不重新启动它?

您是否遵循了错误消息中描述的建议?查看文档中的“是”,我已经查看了该回溯的修复程序,我们已经准备好了代码。如果我删除任何关于动态加载内容的引用,错误就会消失,但显然不是我们想要的情况。