Python 获取要在URL中显示的MongoDB\u id:ObjectId

Python 获取要在URL中显示的MongoDB\u id:ObjectId,python,html,mongodb,flask,jinja2,Python,Html,Mongodb,Flask,Jinja2,Flask/Python是个新手,我希望能够基于MongoDB ObjectId编辑一篇博客文章。我可以通过在URL中手动输入_id来实现这一点,但这当然不是我想要做的。我在下面贴了一些截图来进一步解释 单击“编辑帖子”时,我希望将用户定向到以下URL: 但目前只有当我将id复制并粘贴到URL中时才会发生这种情况。 我编辑_请求的代码如下: Flask/Python: @app.route("/edit_request/<request_id>", method

Flask/Python是个新手,我希望能够基于MongoDB ObjectId编辑一篇博客文章。我可以通过在URL中手动输入_id来实现这一点,但这当然不是我想要做的。我在下面贴了一些截图来进一步解释

单击“编辑帖子”时,我希望将用户定向到以下URL:



但目前只有当我将id复制并粘贴到URL中时才会发生这种情况。
我编辑_请求的代码如下:

Flask/Python:

@app.route("/edit_request/<request_id>", methods=["GET", "POST"])
def edit_request(request_id):
    if request.method == "POST":
        submit_basic_clean_details = {
            "user_name": request.form.get("user_name"),
            "user_lname": request.form.get("user_lname"),
            "user_contact": request.form.get("user_contact"),
            "user_street": request.form.get("user_street"),
            "user_postcode": request.form.get("user_postcode"),
            "user_message": request.form.get("user_message"),
            "user_date": request.form.get("user_date"),
        }
        mongo.db.basic_clean_details.update(
            {"_id": ObjectId(request_id)}, submit_basic_clean_details)
        flash("Request Updated!")
        return redirect(url_for("basic_clean_info"))

    request_info = mongo.db.basic_clean_details.find_one(
        {"_id": ObjectId(request_id)})
    return render_template("edit_request.html", request=request_info)
@app.route(“/edit\u request/”,方法=[“GET”,“POST”])
def编辑请求(请求id):
如果request.method==“POST”:
提交基本清洁详细信息={
“用户名”:request.form.get(“用户名”),
“用户名称”:request.form.get(“用户名称”),
“用户联系人”:request.form.get(“用户联系人”),
“用户街”:request.form.get(“用户街”),
“用户邮政编码”:request.form.get(“用户邮政编码”),
“用户消息”:request.form.get(“用户消息”),
“用户日期”:request.form.get(“用户日期”),
}
mongo.db.basic\u clean\u details.update(
{“\u id”:ObjectId(请求\u id)},提交\u基本\u清理\u详细信息)
flash(“请求已更新!”)
返回重定向(url\u for(“基本\u清理\u信息”))
请求\u info=mongo.db.basic\u clean\u details.find\u one(
{“\u id”:ObjectId(请求\u id)}
返回渲染模板(“edit\u request.html”,request=request\u info)
链接以使用Jinja2在HTML模板中编辑请求

<a href="{{ url_for('edit_request', request_id=request._id) }}">
                    <button class="flash_btns z-depth-2">
                        <img src="{{ url_for('static', filename='/images/edit_icon.png') }}" alt="" class="flash_icons">
                        Edit
                    </button>
</a>


我的想法是,将
添加到
@app.route
会用帖子的ObjectId更新我的URL。相反,我只得到以下URL:




我觉得这是一个简单的“东西”我错过了,我已经被困在这个一段时间,所以将感谢任何帮助。如果需要任何其他信息,我将乐意提供。万分感谢

啊,玛安,没有人?