sql >> データベース >  >> RDS >> Mysql

TypeError:cursor()がflaskext.mysqlを使用して予期しないキーワード引数'dictionary'を取得しました

    あなたはこの答えに従うことができます: https://stackoverflow.com/a/41388992/3129414

    既存のコード変更:

    • DictCursorを使用します MySQLで 初期化
    • dictionary=Trueを削除します カーソルから
    • jsonを使用する 辞書アイテムをjson形式に変換するパッケージ

    app.py

    import json
    from flask import Flask
    from flaskext.mysql import MySQL
    from pymysql.cursors import DictCursor
    
    app = Flask(__name__)
    app.config['MYSQL_DATABASE_USER'] = 'root'
    app.config['MYSQL_DATABASE_PASSWORD'] = '123'
    app.config['MYSQL_DATABASE_DB'] = 'practice_db'
    app.config['MYSQL_DATABASE_HOST'] = 'localhost'
    mysql = MySQL(cursorclass=DictCursor)
    mysql.init_app(app)
    conn = mysql.connect()
    
    @app.route("/", methods=['GET'])
    def home():
        email_address = '[email protected]'
        cursor = conn.cursor();
        cursor.execute(
                'SELECT * FROM user_table WHERE email = (%s)', (email_address,)
            )
        users = cursor.fetchall()
        return json.dumps(users)
    
    app.run(debug=True)
    

    スクリーンショット:




    1. Slickで生成されたクエリのエイリアスを削除する

    2. MySQLホスト'::1'または'127.0.0.1'はこのMySQLサーバーへの接続を許可されていません

    3. わずかな予算での高可用性-最小限の2ノードのMySQLGaleraクラスターの導入

    4. linqラムダを含む数値を含むvarchar列をエンティティに並べ替える方法