如何移除HTML模板中Python字符串变量渲染的多余引号
问题原因
你从pandas DataFrame取到的store description fr字段值本身首尾就带了双引号,模板默认开启HTML转义,双引号会被转成"实体,渲染后自然就显示出了包裹内容的引号。
解决方法
优先选第一种,从数据源处理,不会影响模板自带的XSS安全防护:
- 改后端赋值代码,取值时直接剥掉首尾的双引号就行,用
strip()方法:
store_name = df_bcu_temp['store description fr'].iloc[0].strip('"')
- 要是不方便改后端逻辑,也可以直接在模板里替换掉转义后的引号实体,常见的Jinja2类模板(Flask、FastAPI配套模板、Django模板语法类似)写法如下:
<p>My html Store:{{ store_name | replace('"', '') }} </p>
处理前可以先跑一句
print(repr(store_name))打出来原始变量看看,确认多余引号确实在首尾,别把内容里本来要保留的引号给删了。
内容的提问来源于stack exchange,提问作者alienor88
相关产品推荐
相关产品推荐

