From 1fa26920d9dfc64c49bddbfde51975627f414262 Mon Sep 17 00:00:00 2001 From: percious17 Date: Tue, 16 Dec 2008 23:23:54 +0000 Subject: [PATCH] fixed bug in create column where foreign keys were being left out. --- migrate/changeset/ansisql.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/migrate/changeset/ansisql.py b/migrate/changeset/ansisql.py index a73bdc4..d711d5a 100644 --- a/migrate/changeset/ansisql.py +++ b/migrate/changeset/ansisql.py @@ -59,6 +59,8 @@ class AlterTableVisitor(SchemaIterator,RawAlterTableVisitor): """Common operations for 'alter table' statements""" +from sqlalchemy.schema import ForeignKeyConstraint + class ANSIColumnGenerator(AlterTableVisitor,SchemaGenerator): """Extends ansisql generator for column creation (alter table add col)""" #def __init__(self, *args, **kwargs): @@ -79,11 +81,13 @@ class ANSIColumnGenerator(AlterTableVisitor,SchemaGenerator): pks = table.primary_key colspec = self.get_column_specification(column) self.append(colspec) - self.execute() - #if column.primary_key: - # cons = self._pk_constraint(table,column,True) - # cons.drop() - # cons.create() + if column.foreign_keys: + for fk in column.foreign_keys: + self.append(";\n\t ") + self.add_foreignkey(fk.constraint) + else: + self.execute() + def visit_table(self,table): pass