Flask url_for href 没有响应
Flask url_for href not responding
我正在尝试使用 url_for() 来生成一个 url,它将向我的 Flask 视图传递一个参数。客户端 html 看起来像这样:
{% for account in accounts %}
<li class="list-group-item text-link-hover account clickable-panel"
href="{{ url_for('accounts', account_id=account.id) }}"
account-id={{ account.id }}>
<a>{{ account.name }}</a>
</li>
{% endfor %}
这似乎生成了正确的 html,结果如下所示:
<li class="list-group-item text-link-hover account clickable-panel selected" href="/accounts/27" account-id="27">
<a>Account Name</a>
</li>
我的 Flask 视图如下所示:
@app.route('/accounts/<int:account_id>')
def accounts(account_id):
print(account_id)
return 'account id is: ' + str(account_id)
现在奇怪的是,当我在浏览器中单击 'li' 元素时,没有任何反应。没有 url 变化,flask 似乎根本无法识别该元素已被单击,即它不打印任何内容
但是当我手动将 url 更改为 "accounts/8" 时,烧瓶正确 returns "account id is: 8"
谁能看出为什么 html 没有重定向到新的 flask 视图?
您不能在 <li>
元素上设置 href。它必须放在 <a>
标签里面。
我正在尝试使用 url_for() 来生成一个 url,它将向我的 Flask 视图传递一个参数。客户端 html 看起来像这样:
{% for account in accounts %}
<li class="list-group-item text-link-hover account clickable-panel"
href="{{ url_for('accounts', account_id=account.id) }}"
account-id={{ account.id }}>
<a>{{ account.name }}</a>
</li>
{% endfor %}
这似乎生成了正确的 html,结果如下所示:
<li class="list-group-item text-link-hover account clickable-panel selected" href="/accounts/27" account-id="27">
<a>Account Name</a>
</li>
我的 Flask 视图如下所示:
@app.route('/accounts/<int:account_id>')
def accounts(account_id):
print(account_id)
return 'account id is: ' + str(account_id)
现在奇怪的是,当我在浏览器中单击 'li' 元素时,没有任何反应。没有 url 变化,flask 似乎根本无法识别该元素已被单击,即它不打印任何内容
但是当我手动将 url 更改为 "accounts/8" 时,烧瓶正确 returns "account id is: 8"
谁能看出为什么 html 没有重定向到新的 flask 视图?
您不能在 <li>
元素上设置 href。它必须放在 <a>
标签里面。