簡體   English   中英

如何在 flask/jinja 中顯示先前選擇的選項?

[英]How to show previously selected option in flask/jinja?

在我的 CRUD flask 應用程序的更新部分工作,我不知道如何讓 select 選項顯示最初創建用戶時選擇的內容。

這是我更新頁面上的 select:

<select class="form-select" name="dojo_id">
{% for dojo in dojos %}
    <option value="{{ dojo.id }}">{{ dojo.name }}</option>
{% endfor %}
</select>

這是我的路線:

@app.route('/update/ninja/<int:id>') 
def update_ninja(id):   
    data = { 
        "id": id 
    }

    return render_template("update_ninja.html", ninja = ninja.Ninja.get_one(data), dojos = dojo.Dojo.get_all())  


@app.route('/update/ninja', methods=['POST']) 
def update_ninja_form():
    ninja.Ninja.update_one(request.form)

    return redirect(f"/view/dojo/request.form['dojo_id']")  

所以 select 將顯示所有可用選項,它只是不默認為最初創建時已經選擇的選項。 任何幫助將不勝感激,謝謝

將選定的 ID (selectedId) 發送到模板並執行以下操作:

{% for dojo in dojos %}
    <option value="{{ dojo.id }}" "{{'selected' if dojo.id == selectedId else ''}}">{{ dojo.name }}</option>
{% endfor %}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM