Author: phd
Date: 2006-03-14 08:51:59 -0700 (Tue, 14 Mar 2006)
New Revision: 1651
Modified:
home/phd/SQLObject/paramstyles/sqlobject/manager/command.py
Log:
Merged patches from the revisions 1644:1650 from the trunk
Modified: home/phd/SQLObject/paramstyles/sqlobject/manager/command.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/manager/command.py 2006-03-14 07:01:12 UTC (rev 1650)
+++ home/phd/SQLObject/paramstyles/sqlobject/manager/command.py 2006-03-14 15:51:59 UTC (rev 1651)
@@ -567,7 +567,8 @@
else:
print 'Creating %s' % soClass.__name__
if v >= 2:
- print soClass.createTableSQL()
+ sql, extra = soClass.createTableSQL()
+ print sql
if (not self.options.simulate
and not exists):
if self.options.interactive:
@@ -584,6 +585,8 @@
if tableConstraints:
constraints[soClass._connection].append(tableConstraints)
for connection in constraints.keys():
+ if v >= 2:
+ print 'Creating constraints'
for constraintList in constraints[connection]:
for constraint in constraintList:
if constraint:
@@ -921,25 +924,25 @@
f = open(os.path.join(output_dir, fn), 'w')
f.write(content)
f.close()
- all_diffs = []
- for cls in self.classes():
- for conn in conns:
- diffs = db_differences(cls, conn)
- for diff in diffs:
- if len(conns) > 1:
- diff = ' (%s).%s: %s' % (
- conn.uri(), cls.sqlmeta.table, diff)
- else:
- diff = ' %s: %s' % (cls.sqlmeta.table, diff)
- all_diffs.append(diff)
- if all_diffs:
- print 'Database does not match schema:'
- print '\n'.join(all_diffs)
- if self.options.db_record:
- print '(Not updating database version)'
- elif self.options.db_record:
- for conn in conns:
- self.update_db(version, conn)
+ if self.options.db_record:
+ all_diffs = []
+ for cls in self.classes():
+ for conn in conns:
+ diffs = db_differences(cls, conn)
+ for diff in diffs:
+ if len(conns) > 1:
+ diff = ' (%s).%s: %s' % (
+ conn.uri(), cls.sqlmeta.table, diff)
+ else:
+ diff = ' %s: %s' % (cls.sqlmeta.table, diff)
+ all_diffs.append(diff)
+ if all_diffs:
+ print 'Database does not match schema:'
+ print '\n'.join(all_diffs)
+ for conn in conns:
+ self.update_db(version, conn)
+ else:
+ all_diffs = []
if self.options.open_editor:
if not last_version_dir:
print ("Cannot edit upgrader because there is no "
|