今天在联系flask反向生成URL的时候出现了一个错误,报错及代码如图所示。
可以看到是在对视图函数login进行反向生成URL的时候报错,这是因为在login的路由中我用了转换器,相当于一个变量,所以在反向生成URL的时候flask不知道/username/的部分是什么,需要我们specify。
那么如何解决呢?查看url_for()的形参,发现还有values关键字参数,这就是针对使用转换器的url用来传入参数的。
对代码进行更改,如图所示,传入id=1,运行app.py,在浏览器输入localhost:5000/,页面正常,也得到了login的url。