diff options
| author | christian.simms <unknown> | 2008-04-01 20:46:52 +0000 |
|---|---|---|
| committer | christian.simms <unknown> | 2008-04-01 20:46:52 +0000 |
| commit | 1eadc362f67409cec50273f51e69fb1c024f1422 (patch) | |
| tree | 4b004a5cf65a1523e46f08b0fb0b1be62160b8d3 /migrate/versioning/script | |
| parent | bc7f96cbb1515e7b3505303f160d807828fa1f98 (diff) | |
| download | sqlalchemy-migrate-1eadc362f67409cec50273f51e69fb1c024f1422.tar.gz | |
code reorg: create new utility method loadModel for db diffing
Diffstat (limited to 'migrate/versioning/script')
| -rw-r--r-- | migrate/versioning/script/py.py | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/migrate/versioning/script/py.py b/migrate/versioning/script/py.py index 6103827..7add4f4 100644 --- a/migrate/versioning/script/py.py +++ b/migrate/versioning/script/py.py @@ -4,7 +4,7 @@ from migrate.versioning import exceptions, genmodel, schemadiff from migrate.versioning.base import operations from migrate.versioning.template import template from migrate.versioning.script import base -from migrate.versioning.util import import_path +from migrate.versioning.util import import_path, loadModel class PythonScript(base.BaseScript): @classmethod @@ -28,12 +28,7 @@ class PythonScript(base.BaseScript): if isinstance(repository, basestring): from migrate.versioning.repository import Repository # oh dear, an import cycle! repository=Repository(repository) - if isinstance(model, basestring): # TODO: centralize this code? - # Assume model is of form "mod1.mod2.varname". - varname = model.split('.')[-1] - modules = '.'.join(model.split('.')[:-1]) - module = __import__(modules, globals(), {}, ['dummy-not-used'], -1) - model = getattr(module, varname) + model = loadModel(model) diff = schemadiff.getDiffOfModelAgainstDatabase(model, engine, excludeTables=[repository.version_table]) upgradeDecls, upgradeCommands = genmodel.ModelGenerator(diff).toUpgradePython() #downgradeCommands = genmodel.ModelGenerator(diff).toDowngradePython() |
