Flask中的工程结构——思路整理

在flask的一个工程中会有很多目录,分别用来存放不同的函数,但是对象相互关系和功能让我感觉有些混乱,所以在这里试着整理一下。

这里用一个叫simpledu的工程为例:

simpledu/
  handles/
    __init__.py
    admin.py
    course.py
    front.py
    user.py
  static/
    __init__.py
    index.css
    index.css
    main.css
    main.js
  templates/
    base.html
    index.html
  __init__.py
  app.py
  config.py
  forms.py
  models.py
manage.py

 

以上就是这个工程中存在的目录,以及目录下的文件。

在simpledu的工程下,有另一个simpledu一个目录用来存放后段代码和一个manage,py文件作为启动文件。

在这个manage.py中调用了app.py的create_app.py函数,传递了使用的环境设置。

 

在第二级的simpledu中,__init__.py作为初始化函数,在这里没有使用。

app.py中引用了config.py中的configs字典和models中db类和Course类,创建了两个函数,register_blueprints()和create_app()。register_blueprints()用引用了handlers中的font,course,admin,将模板的蓝图注册到app上。在create_app()中实例化了Flask()类,让后将configs导入app中,初始化了flask_sqlalchemy中的参数,将蓝图注册到app.

forms.py用于存放表单,留着备用

models.py创建了用于连接数据库和sql的模块类

handles中存放这各个各个页面的蓝图文件,其中也有一个__init__.py的python文件,在这个文件中,可以将注册蓝图的实例化后的类进行引入,这样,app中就可以直接引用.handlers中的示例进行注册了。

static中存放着静态文件css,js

templates中存放着页面的html文件。

 

posted @ 2018-05-23 10:33  云满山涧  阅读(221)  评论(0)    收藏  举报