はじめに 最近、SQLAlchemyを使い始めたのですが、 モデルを定義したクラスからマイグレーションスクリプトを自動生成したかったので、 マイグレーションツールであるAlembicも使うことにしました。 自動生成のために必要な最小限の設定をメモします。 なお、使用したバージョンは以下の通りです。
![Alembicでマイグレーションスクリプトを自動生成する最小限の設定 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/3afa0402b911c384dfc6b31137911cb9e1169f4b/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9QWxlbWJpYyVFMyU4MSVBNyVFMyU4MyU5RSVFMyU4MiVBNCVFMyU4MiVCMCVFMyU4MyVBQyVFMyU4MyVCQyVFMyU4MiVCNyVFMyU4MyVBNyVFMyU4MyVCMyVFMyU4MiVCOSVFMyU4MiVBRiVFMyU4MyVBQSVFMyU4MyU5NyVFMyU4MyU4OCVFMyU4MiU5MiVFOCU4NyVBQSVFNSU4QiU5NSVFNyU5NCU5RiVFNiU4OCU5MCVFMyU4MSU5OSVFMyU4MiU4QiVFNiU5QyU4MCVFNSVCMCU4RiVFOSU5OSU5MCVFMyU4MSVBRSVFOCVBOCVBRCVFNSVBRSU5QSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MjU1OWY2ZDcyNDliNzc5MmE5YjE2MjQzMjE0MTk0OGQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwZnVyaSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NjZmNzM0YjVkZjY4YzI2N2IzNzZiOGJiMWU0MmU5NDA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Defb21d20e0ac7699af4a756d34626b3f)
DBスキーマのバージョン管理したい ちゃんとしよう、と思ったのでAlembicを入れた。 DBスキーマのバージョン管理ィ~? http://www.slideshare.net/kwatch/db-28097225 インストールや基本的な使い方はここが最高に参考になりましたのでもうこれでいいと思う http://momijiame.tumblr.com/post/45191790683/python-alembic-rdb 開発途中でも簡単に導入できる ところで、今回のぼくのケースは、もうアプリ作り始めちゃってるから、既にSQLAlchemyのモデル定義がいくつかあって、もちろんDBにもテーブルが既にあって、何、これAlembicのマイグレーションスクリプトにもう一回テーブルの定義を全部書いてop.create_table しないといけないの? マジで? つらい…… 戦争くらいつらい……
前回は sqlalchemy-migrate を使ってみたから、今回は同様に Python のマイグレーションツールの Alembic を使ってみる。 Alembic もバックエンドに SQLAlchemy を使っているらしい。 Alembic を pip (PyPI) からインストールする。 インストールすると “alembic” コマンドが使えるようになる。 # pip install alembic $ pip freeze Mako==0.7.3 MarkupSafe==0.15 SQLAlchemy==0.8.0 alembic==0.4.2 wsgiref==0.1.2 $ alembic --help usage: alembic [-h] [-c CONFIG] [-n NAME] …(snip)… MySQL を使うので MySQLdb (MySQL-python) もイ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く