flask:带有路径的render_template

我有几个要用于我的flask瓶应用程序的模板。

我尝试了以下内容,但似乎只直接在/ templates内部查看,而不是/ templates / folder1,templates / folder2等。

 return render_template('index.html', template_folder='folder1')

return render_template('folder1/index.html')

两者均无法正常工作,我如何指定不同模板的子文件夹。

回答:

可以在创建Flask应用程序(或蓝图)时指定template文件夹:

from flask import Flask

app = Flask(__name__, template_folder='folder1')

资料来源:http : //flask.pocoo.org/docs/0.12/api/#application-object

from flask import Blueprint

auth_blueprint = Blueprint('auth', __name__, template_folder='folder1')

资料来源:http : //flask.pocoo.org/docs/0.12/blueprints/#templates

在template_folder相对于在应用程序/蓝图所在。使用该os库可创建app / blueprint目录之外的模板文件夹的路径。

例如。

import os

APP_PATH = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

TEMPLATE_PATH = os.path.join(APP_PATH, 'templates/')

从应用程序根目录的子目录运行

APP_PATH检索父目录路径(应用程序根)

以上是 flask:带有路径的render_template 的全部内容, 来源链接: utcz.com/qa/436187.html

回到顶部