我有一个Python模块,其中包含我的所有GAE应用程序可能使用的一些工具。我自己创造了它。它是一个单独的文件夹,我有时想要更新其代码,进行重构等。我创建的每个应用程序都可以使用此模块中的函数。现在我需要在应用程序内的某处复制模块文件夹并导入其功能。这是一个普通的程序,没什么特别的。当我对模块的代码进行一些更新时,如果已经在应用程序中导入了该模块,则需要覆盖该模块。然后我只使用GAE实用程序部署应用程序,一切正常。问题是 - 每次更新一些代码时,每个应用程序都必须覆盖模块中的模块副本是否可能没有,但是在一个地方有一个副本并自动从那里导入它?我知道我可以在Python搜索模块的地方复制模块代码。但是,当我将它部署到GAE环境中时,我仍然需要将此模块文件夹复制到应用程序中。所以,我需要一个可以访问我的应用程序的模块副本,当它们在我的本地PC上时,需要在部署时将该文件夹复制到应用程序中。有一个好的和好的解决方案吗?感谢。
答案 0 :(得分:3)
您可以将模块存储在所有GAE应用程序之外的目录中,然后在所有GAE应用程序目录中创建指向该目录的符号链接。 appcfg.py
将遵循符号链接。引自Python SDK docs:
如果您在应用程序目录中创建了指向模块目录的符号链接,appcfg.py将会跟随该链接并在您的应用程序中包含该模块。