如何通过Flask将MySQL SELECT语句发送到JavaScript使用Socket.i

2024-10-01 02:22:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在设置一个运动触发音乐播放器,我想选择我的流派,并将其发送到我的javascript,以便在网站上显示该流派

我试着不把它简单化,也不把它放在字典里

Flask(带Mysql语句的Python)

这些工作与传感器有关,因此重点主要放在Genre=conn.get_data select语句和下面


genres = []
    ldr = MijnMcp.read_channel(mcp, 0)
    tempSensor = MijnMcp.read_channel(mcp, 1)
    new_sensorhistoryLDR = conn.set_data(
        "INSERT INTO sensorhistory (SensorValue,SensorID, Date) VALUES (%s,(SELECT ID from sensor AS s WHERE s.Sensor = 'LDR'), CURRENT_TIMESTAMP)",
        ldr)
    new_sensorhistoryTempSensor = conn.set_data(
        "INSERT INTO sensorhistory (SensorValue,SensorID, Date) VALUES (%s,(SELECT ID from sensor AS s WHERE s.Sensor = 'Temperatuur'), CURRENT_TIMESTAMP)",
        tempSensor)
    genre = conn.get_data(
        "SELECT MuziekGenre FROM musicgenre AS m RIGHT JOIN songs AS s ON m.GenreID = s.SongGenreID WHERE MaxLight >= %s AND %s >= MinLight AND MaxTemp >= %s AND %s >= MinTemp", [ldr, ldr, tempSensor, tempSensor])
    # verwittig frontend van aanpassing
    # socketio.emit('new-insert', {'LDR': ldr, 'TempSensor': tempSensor})
    genres = jsonify(genre)
    socketio.emit('new-select', {'genres': genres})

还有我的app.js


socket.on('new-select', function(data) {
  console.log('We select!', data);
});

这是我目前的错误消息

TypeError:不可序列化JSON

如果可能的话,我想知道我是否和/或如何让它发出我的选择行结果,然后打印出我可能的类型

请随时询问更多信息,如果不清楚,请允许我为您澄清


Tags: andnewdatagetas语句connwhere