[英]Converting stdout stream to html (add <br> on linebreaks)
我正在嘗試獲取一些控制台輸出文本,並通過django / js在我的網站上以模式呈現它。 打印控制台輸出時,換行符工作正常,但在站點上渲染時,將它們全部顯示為一行。 我嘗試用<br>
替換所有\\ n,但似乎沒有任何效果。 <br>
以純文本形式顯示在行中。 有什么想法可以更好地做到這一點/為什么這首先不起作用?
import sys
from io import StringIO
# Save the old stdout
old_stdout = sys.stdout
# Save the stdout to variable
sys.stdout = mystdout = StringIO()
... # Do some processing that generates console text
# Reset the to the old stdout
sys.stdout = old_stdout
# Get the stdout
processing_std_out = mystdout.getvalue()
# Replace all the linebreaks with <br>
# This is the important part
processing_std_out = processing_std_out.replace("\n","<br>")
# return HttpResponse(json.dumps({'console_output':processing_std_out}), content_type="application/json")
js是這樣的:
input_modal.find('.modal-body').text('Analysis complete'+response.console_output)
一個簡單的錯誤,我應該傳遞HTML,而不是文本。 另外,在文本中添加前置標記比替換所有\\ n簡單得多
input_modal.find('.modal-body').html('Analysis complete'+response.console_output)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.