В Flask при вызове cursor.stored_results () выдается ошибка AttributeError: у объекта «DictCursor» нет атрибута «сохраненные_ресурсы» - PullRequest
0 голосов
/ 13 октября 2019
from flask import Flask, render_template, request, jsonify
from flask_mysqldb import MySQL

app = Flask(__name__)


app.config['MYSQL_USER'] = 'root'
app.config['MYSQL_PASSWORD'] = 'password'
app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_DB'] = 'mydb'
app.config['MYSQL_CURSORCLASS'] = 'DictCursor'

mysql = MySQL(app)

@app.route("/user", methods=['GET'])
def fetch_all_user():
    output = []
    try:
        curs = mysql.connection.cursor()
        r = curs.callproc('fetch_all_user')

        # for result in cur.stored_results():
        #   print(result.fetchall())
        print(type(r))
        print(r)
        rs = curs.stored_results()
        print(type(rs))
        print(rs)
        for result in rs:
            print (result.fetchall())

    except mysql.connection.Error as error:
        print("Something went wron: {}".format(error))

    finally:
        curs.close()

    return jsonify({"output":"output"})


if __name__=="__main__":
    app.run(debug=True)

вывод результатов типа (r) и r:

<class 'tuple'>
()

rs = curs.stored_results()

AttributeError: 'DictCursor' object has no attribute 'stored_results'

ПРОБЛЕМА ПРИХОДИТ

при вызове curs.stored_results () он выдает ошибку AttributeError: объект 'DictCursor' не имеет атрибута сохраненных_ресурсов . Я сделал еще одну функцию, которая отправляет пост-запрос и вставляет значения в таблицу с помощью хранимой процедуры, которая работает нормально. но у меня проблемы с получением данных.

...