首先要说的是,我是一个新手程序员,如果我的问题很愚蠢,请原谅。
我试图通过ajax将两个变量从jquery传递到flask,但我不能。我读过很多帖子,但没有一篇适合我。
我有一个输入,可以用两个+和-按钮加和减1。我想传递那个数量和一个字符串变量来更新数据库。我尝试过url中的参数和json,但我无法。
我希望我已经解释清楚了
非常感谢。
AJAX
$('.control-number-btn').on('click', function(e) {
let value = $('#value-' + id).text();
let sensor = 'limit-' + id;
$.ajax({
type: 'POST',
url: '/ajax',
data: { 'newValueVar': value, 'sensorVar': sensor },
success: function(html) {
}
})
})
python
@app.route('/ajax', methods=['GET', 'POST'])
def ajax():
with conexion.cursor() as cursor:
consulta = 'UPDATE sensor_data SET value=%s WHERE sensor=%s;'
newValue = request.args.get('newValueVar')
sensor = request.args.get('sensorVar')
cursor.execute(consulta, (newValue, sensor))
conexion.commit()
return ('nothing')
解决方案:
我发现了错误,我需要添加 cif request.method ==' POST '
替换 request.args.get ()
具有 request.values.get ()
Python:
@app.route('/ajax', methods=['GET', 'POST'])
def ajax():
if request.method == 'POST':
newValue = request.values.get('newValueVar')
sensor = request.values.get('sensorVar')
with conexion.cursor() as cursor:
consulta = 'UPDATE sensor_data SET value=%s WHERE sensor=%s;'
cursor.execute(consulta, (newValue, sensor))
conexion.commit()
# conexion.close()
return ('nothing')
暂无答案!
目前还没有任何答案,快来回答吧!