首页 > 解决方案 > 将 Rawsql 查询数组转换为格式化的 html 表

问题描述

我已经在我的views.py中对我的数据库上的一个表进行了rawsql查询,并得到了一个如下所示的数组:

[
    (19778, 4519, 'sp|P48740|MASP1_HUMAN', 5, 50, 'R'),
    (19779, 14872, 'sp|P48740|MASP1_HUMAN', 5, 54, 'R'),
    (19780, 1018, 'sp|P48740|MASP1_HUMAN', 5, 45, 'R'),
    (19781, 13685, 'sp|P48740|MASP1_HUMAN', 5, 51, 'R'),
]

我想将其格式化为一个 html 表格,其中每组括号内的 6 个部分分别为一列。当然,数组中的项目数量未知,因此显式调用 each 将不起作用。

最好和最有效的方法是什么?是不是在php里面JavaScriptpython

标签: pythonhtmlmysqlsqldjango

解决方案


由于您使用的是Django模板,因此您可以将视图中的数据(我假设是 a Python list)传递到模板中,并使用以下内容进行渲染:

在视图中,您有一个传递给模板的列表:

elem_list = [
    (19778, 4519, 'sp|P48740|MASP1_HUMAN', 5, 50, 'R'),
    (19779, 14872, 'sp|P48740|MASP1_HUMAN', 5, 54, 'R'),
    (19780, 1018, 'sp|P48740|MASP1_HUMAN', 5, 45, 'R'),
    (19781, 13685, 'sp|P48740|MASP1_HUMAN', 5, 51, 'R'),
]

然后在模板中:

<table>
{% for elem in elem_list %}
    <tr>
    {% for sub_elem in elem %}
        <td>{{ sub_elem }}</td>
    {% endfor %}
    </tr>
{% endfor %}
</table>

这对你有用吗?


推荐阅读