Flask项目目录设计

背景:

  Flask不同于Django,Django在创建程序时自动得到必要的目录文件,而Flask则只有一个空文件夹,所以关于Flask项目的目录我们需要自行配置。

Flask项目目录:

  首先利用pycharm创建一个project,如项目名:flaskdemo2,在项目根目录下,Flask项目目录结构,如下:

备注:还可以在项目文件夹下面再增加个目录(和视图函数模块文件夹同一层级),用来存放其它自定义函数、方法
在这里插入图片描述

举例如下:
在这里插入图片描述
文件示范:

1、项目视图formDis.py示例

from flask import Flask, render_template

#form = Blueprint('formDis', __name__)
form = Blueprint('formDis111', __name__, url_prefix="/news")

#实例化蓝图对象
#两个必要参数':
# 第一个参数:蓝图名字,自定义'
# 第二个参数:__name__'蓝图所在的模块或者包,一般为'__name__'变量;
# 第三个参数:url_prefix,非必填,,表示在该蓝图下,所有的url地址访问路径中都要加上xxx路径,即域名/xxx/路由


@form.route('/formplay')  #在蓝图对象上进行操作,路由,指定静态文件夹,注册模版过滤器
def index():
    # 往模板中传入的数据
    my_str = 'Hello Word'
    my_int = 10
    my_array = [3, 4, 2, 1, 7, 9]
    my_dict = {
        'name': 'xiaoming',
        'age': 18
    }
    return render_template('hello.html',
                           my_str=my_str,
                           my_int=my_int,
                           my_array=my_array,
                           my_dict=my_dict
                           )

2、功能模块文件夹app下的_init_.py文件示例

from flask import Flask

app = Flask(__name__)

from .modelViews001.user import us #引入视图中创建的蓝图对象   .表示当前文件所在目录层级
from .modelViews002.order import ord  #引入视图中创建的蓝图对象   .表示当前文件所在目录层级
from .modelViews002.formDis import form  #引入视图中创建的蓝图对象   .表示当前文件所在目录层级

app.register_blueprint(us)  #注册引入的蓝图实例
app.register_blueprint(ord)  #注册引入的蓝图实例
app.register_blueprint(form)  #注册引入的蓝图实例

3、项目启动文件manage.py示例

from app import app   #前面app指的是项目文件夹app,后面app指的是app文件夹下面的初始化文件__init__.py中创建的实例,实例名app

if __name__ == '__main__':
    app.run(host="0.0.0.0",port=5569) #若调试,可考虑开启debug模式,修改代码后服务自动重启,使修改生效,方便调试,生产环境
    #要关闭如:app.run(host='0.0.0.0',port=5000,debug=True)

4、模块文件requirements.txt 模块文件示例

alembic==0.9.6
blinker==1.4
certifi==2017.11.5
chardet==3.0.4
click==6.7
DBUtils==1.2
docopt==0.6.2
Flask==0.12.2
Flask-Migrate==2.1.1
Flask-Script==2.0.6
Flask-Session==0.3.1
Flask-SQLAlchemy==2.3.2
idna==2.6
itsdangerous==0.24
Jinja2==2.10
Mako==1.0.7
MarkupSafe==1.0
pipreqs==0.4.9
PyMySQL==0.8.0
python-dateutil==2.6.1
python-editor==1.0.3
PyTyrion==1.0.1
requests==2.18.4
six==1.11.0
SQLAlchemy==1.2.0
urllib3==1.22
Werkzeug==0.14.1
WTForms==2.1
xlrd==1.1.0
yarg==0.1.9
  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值