我目前正在尝试将从MongoDB获得的数据推入Javascript数组中。我正在运行Flask应用程序作为后端。以下是将数据传递到HTML的代码片段。
def home():
temp_value = mongo.db.temp_sensor_values.find().sort([("_id", -1)]).limit(4)
return render_template('information.html', temp_value=temp_value)
要使用HTML访问它,我可以使用{{temp_value}}
。我想将值temp_value
中的temp_value.value
推送到HTML页面var temp_array = []
中的数组中。到目前为止,我已经尝试过循环了,每个循环都没有用。我得到的错误是SyntaxError: expected expression, got '&'
,可能是因为{{temp_value}}变成了<pymongo.cursor.Cursor object at 0x7fe751cfd748>
。如何使它工作?
编辑:通过执行{{temp_value}}
转义{{temp_value|safe}}
不起作用,它变成<pymongo.cursor.Cursor object at 0x7fe751cfd748>
并且Java语言会引发相同的错误。
编辑2 :因此,尽管这个问题没有被标记为重复,并且链接的答案根本没有帮助,所以这是我的解决方案(无法回答,因为已关闭)
我没有尝试将数据转换为数组(它作为游标对象传递到HTML中),而是通过将其转换为python中的列表
temp_value_list = list(mongo.db.temp_sensor_values.find({}, {"_id": 0}).sort([("_id", -1)]).limit(4))
现在,您需要使用如上所示的投影来删除_id
字段,否则您的列表将包含ObjectId
,而Javascript无法识别该错误,并且会向您抛出错误。