我有一个奇怪的情况,不知道如何找到问题。
我已经创建了这样的蓝图
reportjobsmod = Blueprint('jobreports', __name__, url_prefix='/jobreports', template_folder='templates')
我在views.py
文件
@reportjobsmod.route('/crc_booksdue/', methods=['GET','POST'])
def crc_booksdue():
然后我用
action="{{ url_for('jobreports.crc_booksdue') }}"
在模板中。
这一切都适用于更多路线。
但是,当我尝试将以下路线添加到我的views.py
时@reportjobsmod.route('/job_status/', methods=['GET','POST'])
def jobs_status():
并输入
action="{{ url_for('jobreports.job_status') }}"
在模板中我得到routing.BuildError
我尝试更改路线的名称,我将其替换为现有路线(在模板中正常工作)
我打印出了app.url_map,并且jobreports.job_status与其他路线一起出现。
接下来我该尝试什么?
答案 0 :(得分:1)
查看url_for
文档:
使用提供的方法生成指向给定端点的URL。
这是您应用中的方法,就像在应用中拼写一样。
您的错误来自
当当前应用程序没有给定端点和值的URL时,url_for函数会导致BuildError。
函数状态的endpoint
参数
endpoint - URL的端点(函数名称)
在quickstart中,还有一个提及:
要构建特定功能的URL,您可以使用url_for()函数。它接受函数的名称作为第一个参数[...]