如何在Flask的HTML页面中将Python变量传入URL字符串
解决Flask模板中变量传入静态文件路径的问题
你当前写法的问题在于在Jinja2模板标签{{ }}内部嵌套了另一个模板标签,这种语法不被支持,导致folder_name变量无法被正确解析。
正确的写法是在url_for的filename参数中直接完成变量与固定路径的拼接,以下是几种可行的方式:
- 使用字符串拼接:
<iframe src="{{ url_for('static', filename='export/' + folder_name + '/head_data.html') }}" width="1000" height="550"></iframe>
- 使用
format()方法:
<iframe src="{{ url_for('static', filename='export/{}/head_data.html'.format(folder_name)) }}" width="1000" height="550"></iframe>
- 使用百分号格式化:
<iframe src="{{ url_for('static', filename='export/%s/head_data.html' % folder_name) }}" width="1000" height="550"></iframe>
以上写法都能让Jinja2正确识别folder_name变量,生成指向对应静态文件的正确URL。
内容的提问来源于stack exchange,提问作者Krishnaa Krishna
相关产品推荐
相关产品推荐

