flask_mysqldb Удалить таблицу переменных FROM
Поэтому я использую flask_mysqldb во Flask(веб-сайт Python)
Я пытаюсь написать функцию для удаления строки в любой таблице. Он отлично работает, когда я жестко кодирую имя таблицы, но что мне нужно сделать, чтобы иметь возможность использовать вместо нее переменную?
@app.route('/delete/<string:table>/<string:id>', methods=['POST'])
@is_logged_in
def delete(table, id):
# Create Cursor
cur = mysql.connection.cursor()
# Execute
cur.execute("DELETE FROM %s WHERE id = %s", (table, id))
mysql.connection.commit()
cur.close()
flash('%s deleted'(table), 'success')
return redirect(url_for('dashboard'))
1 ответ
Решение
cur.execute("DELETE FROM %s WHERE id = %s", (table, id))
должно быть
cur.execute("DELETE FROM %s WHERE id = %s" % (table, id))