在flask html上显示pandas dataframe,里面有嵌入?

nqwrtyyt  于 2023-08-01  发布在  其他
关注(0)|答案(1)|浏览(103)

我正在尝试使用flask html渲染一个pandas DF。我有两个列,一个只是字符串,另一个包含URL。我尝试将这两个列组合成第三列,显示字符串,但也链接URL。
下面是我的Python代码:

def make_clickable(url, name):
    return '<a href="{}" rel="noopener noreferrer" target="_blank">{}</a>'.format(url,name)
df['link'] = df.apply(lambda x: make_clickable(x['url'], x['name']), axis=1)
return render_template('home.html', tables=[df1[0:20].to_html(header="true", index= False, justify="center")])

字符串
下面是我的表的html,我使用Jinja

{% for table in tables %}

{{ table|safe }}
{% endfor %}


我得到的结果是,html代码只是被呈现为文本,而不是红色的html。我想知道是否有替代的html代码,可以让我自定义的方式,html代码是正确运行的表?

vx6bjr1n

vx6bjr1n1#

尝试以下操作:

def make_clickable(url, name):
return '<a href="{}" rel="noopener noreferrer" target="_blank">{ </a>'.format(url, name)

df['link'] = df.apply(lambda x: make_clickable(x['url'], x['name']), axis=1)
df_html = df[0:20].to_html(header="true", index=False, justify="center")
return render_template('home.html', table_html=df_html)

字符串
结果html应该是这样的:

{% autoescape true %}
<table>
  {{ table_html|safe }}
</table>
{% endautoescape %}

相关问题