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

时间:2017-12-15 17:12:41

标签: django google-app-engine gunicorn

我正在尝试将我的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

1 个答案:

答案 0 :(得分:1)

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

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

我不太确定为什么App Engine会这样做,但它是use your legacy Cloud 9 account,我强烈建议您遵循该惯例。