Django,显示字典项列表中的HTML表

Joh*_*acs 3 html django html-table

我正在使用django编写一个订单队列系统,我已经能够弄清楚如何从HTML表单获取输入并使用模型和表单将其存储到sqlite数据库中.要将数据库中的数据读入列表,我会做这样的事情

queueList = Order.objects.filter(orderDate__isnull=True)
Run Code Online (Sandbox Code Playgroud)

({{queueList}}的html输出)

Order是具有多个属性的模型.返回的数据看起来像这样.

[<Order: Name: Bob, Catalog #: 32, Vendor: vendor1, Site: Site1, Entered: 2011-06-06,     Ordered: None, Received: None, Ordered By: orderee1>, <Order: Name: Jeff, Catalog #: 333, Vendor: vendor2, Site: site2, Entered: 2011-06-06, Ordered: None, Received: None, Ordered By: orderee2>] 
Run Code Online (Sandbox Code Playgroud)

感觉就像django中有一些简单的东西可以将它格式化为HTML表格,有点像form.as_table.有没有简单的方法来做到这一点?我需要显示3个表,首先打印出没有orderDate的每个字典项,第二个是orderDate但没有receiveDate的每个项,第三个是包含所有receivedDates的表.我是否必须实际删除所有这些数据以构建表格?我在网上找到了一些尝试过类似东西的人,但它却抛出了异常,对我来说太复杂了.

Ste*_*lsh 11

这听起来像是可以使用Django模板语言轻松解决的问题.

所以,在你的html模板文件中,你可以有类似的东西:

<table summary="no_orderDate">
<tr><th>Column 1</th><th>Column 2</th>
{% for queue in queueList %}
    {% if not queue.orderDate %}
        <tr><td>{{ queue.name }}</td><td>{{ queue.catalog_num }}</td></tr>
    {% endif %}
{% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud)

您可能需要检查一些语法,但您明白了.