当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

Python3 Bottleフレームワーク入門(その3)- ORM Peewee (MySQL)

今回はデータベースを使ったケースを学んでいきましょう。フレームワークでの入門編ではほとんどのケースサンプルで載っているのは、Sqlite3を使ったケースが多いですが、実際の運用を考えて実験するとやはりMySQLでの実験運用が現実的と考える。やはり微妙に書き方が変わる可能性があるためそうした方が良いと思います。


また、今の時代フレームワークでORMを使うのが当たり前になってきているためBottleで利用できるORMの一つpeeweeを紹介したいと思います。やはりORMの利用で飛躍的にDBのCRUD処理が楽ちんになります。

peeweeの導入

peeweeを導入するにあたり今回はMySQLを使用した前提で説明していきたいと思います。

必要なMYSQLドライバーを事前にpipやbrewなどで導入してください。

必要ドライバー

  • MySQL-python
  • PyMySQL

peeweeを導入できたら最初にコードを作る前にMySQLでテーブルを作って見ましょう。既に既存で存在するテーブルからコードを生成する機能が用意されています。

上記のようなデータベースをMySQLで作成してみましょう。このコードをexport.sqlとして保存し、次のようにしてテーブル作成すると簡単で良いと思います。

下記のように指定を行って任意のファイルmodels.pyへ出力をしてすると自動的にORM操作を行う際に必要なテーブルのclassを生成してくれます。

DBから特定ユーザデータを抜き出して表示するプログラムを見てみましょう。

実際にブラウザからhttp://xxx.xxx.xxx.xxx:8080/user/James というようにチェックするためには、テーブルにダミーデータを入れておく必要があります。

◯ テストデータをDBへインサート

これで全ての準備が整ったので、改めてブラウザからhttp://xxx.xxx.xxx.xxx:8080/user/kazuoでアクセスしてみましょう。下記のように表示されたら成功です。



Python Bottle Framework入門 全13 回
1.基礎編サーバ起動
2.リクエストメソッド
3.ORM Peewee (MySQL)
4.ORM Peewee CRUD
5.Cookie And Session
6.Abort and Redirect
7.マルチスレッドWEBサーバ
8.デーモン化
9.Json
10.WSGI on SSL
11.Apache連携起動(外部WSGI) SSL接続
12.Apache連携起動(ReverseProxy)SSL接続
13.hprox連携起動(ReverseProxy)SSL接続&HTTP2対応

合わせて読みたいPython MySQL操作関連