【问题标题】:Django: How to add html tag from string to the html templateDjango:如何将 html 标签从字符串添加到 html 模板
【发布时间】:2021-12-29 16:29:51
【问题描述】:

详情: 客户端框架: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而不是简单的字符串

【问题讨论】:

标签: python html json django


【解决方案1】:

您可以像这样使用safe:{{ your_html_string | safe }}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-03
    • 2018-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    • 2020-04-17
    相关资源
    最近更新 更多