我在一个非常简单的应用程序中遇到烧瓶 url_for('') 错误。
from flask import Blueprint, render_template, abort
from jinja2 import TemplateNotFound
base = Blueprint('main', __name__)
@base.route('/', defaults={'page':'home'})
@base.route('/<page>')
def show(page):
try:
return render_template('%s.html'%page, name='my name is')
except TemplateNotFound:
abort(404)
以上是我的蓝图文件,这些路线工作正常,但如果我尝试这样做
with flask.test_request_context():
print url_for('home') #home.html or any other forms
我只是得到这个错误:
raise BuildError(endpoint, values, method)
werkzeug.routing.BuildError: ('home', {}, None)
谁能帮我弄清楚这里发生了什么?在我的 html 页面中,我可以打印出静态文件的位置:
{{ url_for('static', filename='style.css') }}
但如果我尝试这样做:
{{ url_for('home') }}
我再次得到同样的错误。有人对如何进行有一些建议吗?