构建大型Flask应用程序?

时间:2015-10-13 15:21:48

标签: python flask

run.py
static/
templates/
tests/
config.py
models.py

我在run.py中创建了Flask类的实例,并定义了视图。我打算移动视图,使它们与run.py文件分开,只需让run.py文件实例化Flask类。但是,我也有很多非视图函数,每个视图函数调用它们并实现应用程序逻辑。

有什么方法可以重新组织这些视图和逻辑函数来创建一个好的应用程序结构?我是否应该为每个视图创建一个包含单独视图文件的视图/文件夹,包括与每个视图函数对应的逻辑函数?我应该将逻辑功能组合在另一个单独的文件夹中吗?

1 个答案:

答案 0 :(得分:2)

文档中有一些好guidance。 Flask并没有施加很多强制结构,但是你在正确的轨道上养成了为自己的理智构建项目的习惯。这完全可以留给你如何做到这一点。可能有很多意见

我倾向于创建一个典型的大多数python项目的结构。您可能希望使用应用程序工厂模式和蓝图。

myapp
/myapp
    /home
        views.py
    /templates
    /static
    factory.py
    core.py
    models.py
runserver.py
config.py

Mattupstate在这个问题上有一个很好的blog article。还有Fbone。 Miguel Grinberg在他的Flask书中有一章专门讨论这个问题。