在Google App Engine服务之间进行通信
我的项目结构如下
.
├── app
│ ├── api
│ ├── models
│ ├── services
│ │ └── lib
| | |__ worker.yaml
| | |__ worker.py
| |_ main.py
|_ app.yaml
我试图像这样models
从app
模块(即默认模块)导入worker.py
,
from app.models import db
但事实证明No module named
app.models
。但是我可以在内部实现相同的功能main.py
。请注意,我正在同时运行app.yaml
和worker.yaml
文件。
-
部署后,GAE服务/模块不会在其模块目录(文件所在的目录)之外共享 任何内容
.yaml
。因此
worker.py
,在services
dir(worker.yaml
存在的地方)上方看不到任何东西,因此看不到models
。但是main.py
可以,因为模型位于其app
目录(app.yaml
存在)中。如果需要,可以
models
在内部进行符号链接services
,请参阅在App
Engine模块之间共享实体或者,也许看看Google App
Engine应用程序中的默认服务/模块在文件夹结构方面是否可以成为非默认服务/模块的同级产品?有关如何构建多模块应用程序的示例?