在整个烧瓶/heroku/github 业务上都是一个初学者,但是已经使用 python 好几年了,并且有使用 tortoise SVN 的经验。我一直在关注有关如何在此链接https://devcenter.heroku.com/articles/python上将代码推送到 heroku 的教程,经过大量修改后,我设法上传了我的网络应用程序。但是我肯定错过了一些东西。
目前在项目中,我有一个文件结构来组织不同的进程(例如 web 服务调用和数据库处理),然后通过以下代码将它们导入主应用程序:
## Webservices
dirname, filename = os.path.split(os.path.abspath(__file__))
WSdirname = dirname + '\\WebServices\\'
sys.path.append(WSdirname)
import WebservicesModule as WSmodule # Module resides in "WebSerivices" folder
这意味着文件存储在类似的结构中
AppFolder\
app.py
WebServices\
WebservicesModules.py
...
Database\
DatabaseModules.py
...
这在本地有效。然而,一旦被 git 推送到 heroku,代码似乎无法访问该WebservicesModule
模块。在表格中给出错误
导入错误:没有名为 WebservicesModule 的模块。
解释为什么我有这个文件结构;由于需要大量的 Web 服务,因此更容易将它们包含在同一个文件夹中。对于数据库操作等也是如此。
我的问题是这个。我的代码是不好的做法,意味着heroku不允许吗?或者 git hub 没有将我的文件上传到 heroku,因此无法找到它们(尽管位于主目录的文件结构中)?还是有什么我不知道的问题?尽管在代码中这样做,我是否需要在 requirements.txt 中将这些模块声明为依赖项?
为您可以提供的任何帮助干杯:)!