【发布时间】:2021-01-23 05:39:21
【问题描述】:
嗨,我对 Flask 很陌生。我正在创建一个博客,我在其中从其他站点抓取一些文章,也从数据库(MySQL)中抓取一些文章。 我的网址:
回来了
404 未找到错误。
我想将此重定向到以下 URL:
https://bitcoinist.com/beware-bullish-bitcoin-case-could-be-due-to-cftc-scramble/
我无法对这个 URL 进行硬编码,因为它来自数据库中的 slug 并不断变化。如何使用错误处理程序或任何其他方式重定向它?
这是下面的代码,它从数据库中获取博客内容。我要重定向的 URL 作为 slug 存储在数据库中。我在数据库中上传的博客运行良好。只想为外部博客或新闻文章配置重定向。
对于存储为 slug 的外部 URL,它返回 404: 网址:http://127.0.0.1:5000/post/https://bitcoinist.com/beware-bullish-bitcoin-case-could-be-due-to-cftc-scramble/
并希望将其重定向到: https://bitcoinist.com/beware-bullish-bitcoin-case-could-be-due-to-cftc-scramble/
@app.route('/post/<string:post_slug>', methods=['GET'])
def post_route(post_slug):
post = Posts.query.filter_by(slug=post_slug).first()
return render_template('post.html', params=params, post=post)
抱歉,我是 SO 新手,无法按照应有的方式进行查询。
【问题讨论】:
-
欢迎来到 SO。您需要在帖子中包含您的代码。
-
您可以为
/post/<url>注册一个路由,然后使用url在数据库中查找条目,然后重定向到正确的URL? -
@MatsLindh 有解决方案
标签: python flask redirect flask-sqlalchemy