自定义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_uriapp.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False#初始化插件init_exts(app=app)return app