Skip to content

Commit 8de64bf

Browse files
committed
DB review
1 parent 653d1de commit 8de64bf

5 files changed

Lines changed: 43 additions & 3 deletions

File tree

.idea/workspace.xml

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

db_create.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#!flask/bin/python
2+
from migrate.versioning import api
3+
from config import SQLALCHEMY_DATABASE_URI
4+
from config import SQLALCHEMY_MIGRATE_REPO
5+
from app import db
6+
import os.path
7+
db.create_all()
8+
if not os.path.exists(SQLALCHEMY_MIGRATE_REPO):
9+
api.create(SQLALCHEMY_MIGRATE_REPO, 'database repository')
10+
api.version_control(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO)
11+
else:
12+
api.version_control(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO, api.version(SQLALCHEMY_MIGRATE_REPO))

db_downgrade.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#!flask/bin/python
2+
from migrate.versioning import api
3+
from config import SQLALCHEMY_DATABASE_URI
4+
from config import SQLALCHEMY_MIGRATE_REPO
5+
v = api.db_version(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO)
6+
api.downgrade(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO, v - 1)
7+
print 'Current database version: ' + str(api.db_version(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO))

db_migrate.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!flask/bin/python
2+
import imp
3+
from migrate.versioning import api
4+
from app import db
5+
from config import SQLALCHEMY_DATABASE_URI
6+
from config import SQLALCHEMY_MIGRATE_REPO
7+
migration = SQLALCHEMY_MIGRATE_REPO + '/versions/%03d_migration.py' % (api.db_version(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO) + 1)
8+
tmp_module = imp.new_module('old_model')
9+
old_model = api.create_model(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO)
10+
exec old_model in tmp_module.__dict__
11+
script = api.make_update_script_for_model(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO, tmp_module.meta, db.metadata)
12+
open(migration, "wt").write(script)
13+
api.upgrade(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO)
14+
print 'New migration saved as ' + migration
15+
print 'Current database version: ' + str(api.db_version(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO))

db_upgrade.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!flask/bin/python
2+
from migrate.versioning import api
3+
from config import SQLALCHEMY_DATABASE_URI
4+
from config import SQLALCHEMY_MIGRATE_REPO
5+
api.upgrade(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO)
6+
print 'Current database version: ' + str(api.db_version(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO))

0 commit comments

Comments
 (0)