我在python中发送多行字符串,在HTML中使用此字符串变量进行打印,将其打印为单个字符串。
Python代码:
@app.route("/<faqid>")
@is_logged_in
def faqid(faqid):`enter code here`
device = """
class-map match-any eftv6-bun-1
match access-group ipv6 eftv6-bun
end-class-map
!
policy-map qp-80
class eftv6-bun-1
set dscp af31
!
class class-default
!
end-policy-map
!
"""
return render_template("faqdetails.html", device=device)
HTML faqdetails.html
<div style="b`enter code here`ackground-color:white;">
<p style="text-align:left;"> {{device}} </p>
</div>
在网页faqdetails.html中显示为
“class-map match-any eftv6-bun-1 match access-group ipv6 eftv6-bun end-class-map!policy-map qp-80 class eftv6-bun-1 set dscp af31!class class-default! end-policy-map!“
答案 0 :(得分:0)
您需要使用<br>
标记替换换行符。
你可能会忘记device = device.replace("\n", "<br>")
。
或者,这似乎是制作自定义Flask过滤器的一个很好的片段: http://flask.pocoo.org/snippets/28/
只需将其放在某处并按照以下说明进行注册: http://jinja.pocoo.org/docs/2.10/api/#custom-filters
之后,在您的模板中,您应该能够写作
{{ device|nl2br }}
答案 1 :(得分:0)
HTML代码帮助
<div style="background-color:white;">
<!--<p style="text-align: left font-family:bold;">Answer:</p>
<br>-->
{% set ans = device.split("\n")%}
{% for answ in ans%}
<p style="text-align: left; font-family: normal; font-size:
16px;"> {{ answ }} </p>
{% endfor %}
</div>
或者
将输出包装在pre标签中..它应该保留字符串的格式,如下所示
<div style="background-color:white;">
<!--<p style="text-align: left font-family:bold;">Answer:</p>
<br>-->
<pre style="text-align: left; font-family: normal; font-
size: 16px; background-color:white;"> {{ device }} </pre>
</div>