好,所以我已经完成了一些教程,可以将Flask应用程序安装到Google云上,这很好。
我还通过了Flask教程来建立一个flaskr博客: http://flask.pocoo.org/docs/1.0/tutorial/
在我看来,明智的做法是在Google上创建一个数据库(在mycase中为MySQL),然后修改代码以使其使用它。很好,我可以在本地计算机上使用它。
但是,现在我要部署它了,我遇到了一个问题。
Google云教程倾向于使用在单个文件(例如main.py)中启动的flask应用程序,例如:
from flask import Flask, render_template
app = Flask(__name__)
....
上面提到的烧瓶教程使用一个软件包,并将代码放入__init__.py文件中的create_app(),目前我无法以相同的方式启动它。 (请参见示例代码)。
from flask import Flask
def create_app(test_config=None):
# create and configure the app
app = Flask(__name__, instance_relative_config=True)
app.config.from_mapping(
SECRET_KEY='dev'
)
我是否需要对诸如app.yaml文件之类的内容进行一些调整,以使其将flask识别为flaskr软件包,或者我需要重写整个内容以便它使用main.py文件? / p>
我觉得这是我可以真正养成不良习惯的时间点之一。一般来说,在Google Cloud上编写Flask应用程序的首选方式是什么?
我正在使用google中的标准环境。
感谢您的建议。
标记
答案 0 :(得分:2)
由于拥有应用程序工厂,因此可以在任何地方创建应用程序。只需在main.py
中创建它,因为这是App Engine的期望:
from my_package import create_app
app = create_app()