DB関連について - Tsuyoposon/Koukoku-project GitHub Wiki

管理方法

flask_sqlalchemyを利用してmysqlでもpostgreでも使えるようにする
migrateはflask_migrateを利用する

vagrantでのmysql

  • shellコマンドで作成できなかったので初めての起動時にcreate database koukokuDB;を行う

DBのテーブルの生成方法

# migrateを行うためのファイルを自動生成(既に適用)
$ FLASK_APP=receve_api.py flask db init

# モデル(テーブル)内容に沿ってmigrateファイルを生成
$ FLASK_APP=receve_api.py flask db migrate
# migrateファイルに沿ってテーブルを変更
$ FLASK_APP=receve_api.py flask db upgrade

migrate:resetがしたい時

flask_migrateにはmigrate:resetのようなコマンドが無いので

$ FLASK_APP=receve_api.py flask shell
from DB.koukokuDB.database import reset_db
from DB.koukokuDB.models import Recommen_item
reset_db(app)
Recommen_item.set_recommen_items(app)

vagrant

  • ローカルにmysql

wercker

  • 別のコンテナにmysql

heroku

  • アドオンを入れて自動生成されたpostgre
$ heroku run FLASK_APP=receve_api.py flask shell --remote staging
>>> from DB.koukokuDB.database import db
>>> db.drop_all()
>>> db.create_all()
>>> 
now exiting InteractiveConsole...