Django: Как добавить html-тег из строки в html-шаблон
Детали: Клиентский фреймворк: Django
Веб-сервер: Python + Flask
У меня есть HTML-страница, которая отображается с помощью массива данных. Каждый элемент массива содержит некоторые поля. И одно из полей является объектом json.
Для улучшения видимости json я преобразовал json obj в html таблицу.
В настоящее время это не работает. Результаты (в браузере) выглядят так:
PasswordPolicy <table border="1"><tr><th>MinimumPasswordLength</th><td>16</td></tr><tr><th>RequireSymbols</th><td>True</td></tr><tr><th>Re
Код колбы:
@app.route("/PasswordPolicy", methods=["GET"])
@login_required
def get_password_policy():
get_table_content = list(db_object.get_password_policy())
search_event = request.args.get('searchquery')
at_type = request.args.get('audittype')
print("**************")
for e in get_table_content:
print("Before:")
print(e['PasswordPolicy'])
e['PasswordPolicy'] = json2html.convert(json = e['PasswordPolicy'])
print("After:")
print(e['PasswordPolicy'])
print("get_table_content:")
print(get_table_content[0])
print("**************")
return render_template(
'soc2/password_policy.html',
get_list=get_table_content
)
Html контент:
<table id="datatable-buttons" class="table table-striped table-bordered dt-responsive nowrap" cellspacing="0" width="100%">
<thead>
<tr class="headings">
<th class="column-title">BusinessUnit </th>
<th class="column-title">ControllerNumber </th>
<th class="column-title">PasswordPolicy </th>
</tr>
</thead>
<tbody>
{% for elements in get_list %}
<tr class="even pointer">
<td>
{{ elements["BusinessUnit"] }}
</td>
<td>
{{ elements["ControllerNumber"] }}
</td>
<td>
{{ elements["PasswordPolicy"] }}
</td>
</tr>
{% endfor %}
</tbody>
</table>
Вопрос в том, как сказать браузеру, чтобы он разбирал таблицу как html вместо простой строки
Вы можете использовать safe
так: {{ your_html_string | safe }}
Спасибо за быстрый ответ.
работает!