首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在django中动态输出python字典到html?

如何在django中动态输出python字典到html?
EN

Stack Overflow用户
提问于 2018-08-09 01:15:20
回答 2查看 419关注 0票数 0

这是我从socket动态获得的数据,我想用django把它显示在一个表中,就像html中的键和值。

代码语言:javascript
复制
Received: 
{'power': 'ON', 'mode': 'AUTOMATIC', 'execution': 'ACTIVE', 'Xact': '235.70', 'Yact': '1468.86', 'Zact': '1.27', 'Xcom': '0.00', 'Ycom': '0.00', 'Zcom': '0.00', 'path_feedrate': '0.00', 'line': '1136849', 'Block': '1136849', 'program': '37262 S1 - .75 JET_imported_CNC.ORD\n'}
{'comms': 'NORMAL', '': '\n2018-08-08T17:11:51.0384', 'Sspeed': '60000.00\n'}
{'line': '1136860', 'Block': '1136860\n'}
{'Xact': '236.17', 'Xcom': '909.70', 'path_feedrate': '909.70\n'}
{'Xcom': '0.00', 'path_feedrate': '0.00', 'line': '1136872', 'Block': '1136872\n'}
{'line': '1136883', 'Block': '1136883\n'}
{'line': '1136895', 'Block': '1136895\n'}
{'line': '1136906', 'Block': '1136906\n'}
{'Xact': '236.52', 'Xcom': '677.44', 'path_feedrate': '677.44\n'}
{'Xcom': '0.00', 'path_feedrate': '0.00', 'line': '1136918', 'Block': '1136918\n'}
{'line': '1136929', 'Block': '1136929\n'}
{'line': '1136941', 'Block': '1136941\n'}

更多的输出……

我试着使用这个,但它不起作用。

代码语言:javascript
复制
{% block content %}
<table>
    {% for key, value in devDict.items() %}
    <tr>
        <td>{{ key }}</td>
        <td>{{ value }}</td>
    </tr>
    {% endfor %}
</table>
{% endblock content %}

{% block js %}
<script type="text/python3" src="{% static 'widgets/python/mtconnect.py'%}"></script>
{% endblock js %}

这是我的python脚本,这是我获取数据的方式:

代码语言:javascript
复制
import socket

HOST = "myHOST"
PORT = myPORT
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
    s.connect((HOST, PORT))
    buffer_size = 2048
    print("Received: ")
    while True:
        devData = s.recv(buffer_size).decode("utf-8").split("|")
        timeStamp = devData.pop(0)
        devDict = dict(zip(*([iter(devData)]*2)))
        print(devDict)
s.close()
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-14 03:47:07

我所面临的问题是,由于存在两种不同的协议,因此没有可能将数据从套接字呈现到浏览器。我必须首先在它们之间建立一座桥梁,从socket到websocket。我通过使用:https://github.com/yankov/webtcp完成了这项工作。然后我就可以把数据从套接字渲染到浏览器。

票数 0
EN

Stack Overflow用户

发布于 2018-08-09 02:21:28

看起来你收到了一个字典列表,首先你需要遍历这个列表。Smthn喜欢:

代码语言:javascript
复制
<table>
    {% for line in devDict %}
    <tr>
        {% for key, value in line.items %}
                <td>{{ key }}</td>
                <td>{{ value }}</td>
        {% endfor %}
    </tr>
    {% endfor %}
</table>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51752231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档