20、flask-进阶-自定义静态文件static和模板文件templates的路径配置
自定义static目录和templates目录的路径
-
原本flask默认的static和templates目录是在App目录下的:如下图
-
如果想把这两个目录更改位置,如放在根目录下:
代码如下:
__init__.py
from flask import Flask
from .views import blue
from .exts import init_exts
import os
# 获取项目根目录
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 这和django中的写法一样
print(BASE_DIR)
def create_app():
# 配置静态文件static和模板文件templates的目录路径
# static_forlder = '../static' # 不建议这样写
# template_folder = '../templates' # 不建议这样写
static_forlder = os.path.join(BASE_DIR, 'static')
template_folder = os.path.join(BASE_DIR, 'templates')
app = Flask(__name__, static_folder=static_forlder, template_folder=template_folder) # 创建flask应用
#注册蓝图
app.register_blueprint(blueprint=blue)
#配置数据库
db_uri = 'sqlite:///sqlite3.db' #sqlite的配置
# db_uri = 'mysql+pymysql://root:123456@127.0.0.1:3306/flask_db?charset=utf8mb4' #mysql的配置
app.config['SQLALCHEMY_DATABASE_URI'] = db_uri
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
#初始化插件
init_exts(app=app)
return app