0
我有一個Flask
應用程序使用藍圖,我想改變藍圖搜索模板的目錄。燒瓶template_folder參數沒有被使用
我創建了一個藍圖如下:
main = Blueprint('main', __name__, template_folder='newName')
@main.route('/')
def index():
return render_template("index.html")
然後我註冊並運行我的應用程序:
app.register_blueprint(main)
app.run(debug=True)
但是,如果我當時去改變我的templates
目錄的名稱newName
我得到jinja2.exceptions.TemplateNotFound
。如果我將目錄名稱更改回templates
,我的應用程序正常工作並呈現index.html
頁面;藍圖正在註冊,但template_folder
參數似乎是無關緊要的。爲什麼它沒有影響,如何使用藍圖將我的模板存儲在newName
中?
編輯:
我有以下結構:
run.py <--- from app import build
build().run(debug=True)
app/
__init__.py <--- define build: register bp and return app
controllers/
__init__.py <--- import main blueprint from main
main.py <--- create main blueprint as above
newName/
index.html
修改過的名字對我來說也適用於我使用該項目結構,我更新了我的問題以顯示我的項目結構似乎並不工作。 – alh
您需要移動'controllers'下的'newName'摺疊號。 – atupal
爲什麼如果我將'newName'更改爲'templates',它會起作用?它是否回滾到默認值或什麼? – alh