报错:werkzeug.routing.BuildError
来源:5-4 网易新闻前台
Ethan_Ban
2019-07-01
2019.7.3更新问题
- 代码如下所示,执行flask_news.py时,发现如果末尾 加上app.run(debug=True),报错为下图所示:
网页报错
Termial 中报错截图如下:
2. 当不加 debug调试模式时,报错为:
7.3 更新结束
报错内容:
打开主页 127.0.0.1:5000 时报错
werkzeug.routing.BuildError: Could not build url for endpoint ‘detail’ with values [‘pk’]. Did you mean ‘datail’ instead?
模板文件和老师一致。
查了很久,发现在 视图函数 index( )中:
如果 new_lists = News.query.all( ) 就会报错
如果 new_lists = News.query.filter_by(is_valid = 1) 就不会报错
具体是什么原因,还是不太明白
以下为试图函数代码:
@app.route('/')
def index():
''' 新闻首页 '''
news_list = News.query.all()
return render_template('index.html', news_list=news_list)
@app.route('/cat/<name>/')
def cat(name):
''' 新闻分类'''
news_list = News.query.filter(News.types == name)
return render_template('cat.html', name=name, news_list=news_list)
@app.route('/detail/<int:pk>/')
def datail(pk):
'''新闻详情 '''
new_obj = News.query.get(pk)
return render_template('detail.html', pk=pk, new_obj=new_obj)
if __name__ == "__main__":
app.run(debug=True)
写回答
1回答
-
NavCat
2019-07-03
错误页面能截个大图出来吗?你提供的错误信息太少了,不好排查
032019-07-03
Python操作三大主流数据库-MySQL+MongoDB+Redis
一次实战同时掌握Python操作MySQL,MongoDB,Redis 三大数据库使用技巧
2024 学习 · 376 问题
相似问题