テンプレートシステムを完了した後、次のフレームは関係なく、データベースの操作を研究することであるPythonのフレームワーク、直接データベースを使用することをAPI(Redisの、pymysql、等)動作させることができるが、これらの操作はそうあり、十分に便利ではないORM
1、フラスコSQLAlchemyの
フラスコSQLAlchemyのの構成、参照がされてもよい配置- フラスコSQLAlchemyの2.0ドキュメント
SQLAlchemyのがあるのpython、オープンソースのORMモジュール、同様のモジュールと同様にピーウィー、一部の開発者はなりSQLAlchemyのは反対していたフラスコ、パッケージので、そこフラスコSQLAlchemyののモジュール
インストールフラスコSQLAlchemyの、コマンドを:
フラスコSQLAlchemyのインストールPIP
インストールpymysql、コマンド:
pymysqlをインストールするPIP
2、SQLAlchemyのモデル
インポートOS からフラスコのインポートフラスコ からフラスコをインポートrender_template から flask_sqlalchemy インポートSQLAlchemyの インポートpymysql pymysql.install_as_MySQLdb() #は、アプリケーション作成 アプリケーションはフラスコ(= __name__ ) BASE_DIR = os.path.abspath(os.path.dirname(__FILE__ )) #のリンクをデータベースの app.configを[ " SQLALCHEMY_DATABASE_URI " ] = " MySQLの://ルート:123456 @ localhostの/ flaskdb " #は後に自動的にリクエストを送信 [app.configを" SQLALCHEMY_COMMIT_ON_TEARDOWNは" ] = 真 #跟踪修改 App.configファイル[ " SQLALCHEMY_TRACK_MODIFICATIONS " ] = Trueの モデル = SQLAlchemyの(APP) クラス:試験(models.Model) __tablename__ = " テスト" ID = models.Column(models.Integer、PRIMARY_KEY =を真の) 名前 = models.Column(models.String(32 )) 時間 = models.Column(models.Date) app.route @(" /インデックス/ "、メソッド= [ " GET" " POST " ]) デフインデックス(): 名 = " インデックス" リターン render_template(" index.htmlを"、** 地元の人々 ()) の場合 __name__ == ' __main__ ' : models.create_all() #同步数据库 アプリ。実行(ホスト= " 127.0.0.1 "、ポート= 8000、デバッグ=真)
上記のコードがリンクされているMySQLのデータベースを、通常、次の警告を報告しました:
ソリューション:
インポートモジュールのMySQL-コネクタ、コマンド:
MySQLのコネクタをインストールするPIP
データベース・リンクのコード部分を変更します。
app.configを[ " SQLALCHEMY_DATABASE_URI " ] = " mysqlの+ mysqlconnector://ルート:123456 @ localhostの/ flaskdb "
この時点で、問題を警告することは解決され、