App上的Django - gunicorn。错误:'没有模块命名为my_project'

问题描述 投票:1回答:1

我正在尝试将我的Django(v2.0)应用程序上传到Google App Engine,但是Gunicorn(v19.7.1)无法找到我的应用程序。当我使用gcloud app deploy部署我的应用程序时,我收到错误

'没有模块命名为AppFlex'

错误和app.yaml配置的完整屏幕截图如下。

enter image description here

wsgi.py的内容是:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "AppFlex.settings")

application = get_wsgi_application()

此外,我可以在本地运行应用程序:

gunicorn AppFlex.wsgi --workers 16

我可以在本地使用gunicorn运行应用程序的另一个屏幕截图:

enter image description here

django google-app-engine gunicorn
1个回答
1
投票

我认为问题在于您的顶级模块(AppFlex)是驼峰式的,并且出于某种原因,App Engine只需要小写模块名称。

如果您将模块名称更改为appflex并更新app.yaml中的相应配置以及引用顶级模块的其他任何位置(例如,在wsgi.pi中),它应该可以正常工作。

我不太确定为什么App Engine会这样做,但它是convention for modules to be lower case,我强烈建议你遵循这个惯例。

© www.soinside.com 2019 - 2024. All rights reserved.