fkeys = self.get_foreign_keys(table_name, schema, **tblkw)
for fkey_d in fkeys:
conname = fkey_d['name']
+ # look for columns by orig name in cols_by_orig_name,
+ # but support columns that are in-Python only as fallback
constrained_columns = [
cols_by_orig_name[c].key
if c in cols_by_orig_name else c
"Omitting %s KEY for (%s), key covers omitted columns." %
(flavor, ', '.join(columns)))
continue
- sa_schema.Index(name, *[cols_by_orig_name[c] for c in columns],
+ # look for columns by orig name in cols_by_orig_name,
+ # but support columns that are in-Python only as fallback
+ sa_schema.Index(name, *[
+ cols_by_orig_name[c] if c in cols_by_orig_name
+ else table.c[c]
+ for c in columns
+ ],
**dict(unique=unique))
'to_reflect',
cls.metadata,
Column('x', sa.Integer, primary_key=True),
+ test_needs_fk=True
)
cls.related = Table(
'related',
cls.metadata,
- Column('q', sa.Integer, sa.ForeignKey('to_reflect.x'))
+ Column('q', sa.Integer, sa.ForeignKey('to_reflect.x')),
+ test_needs_fk=True
)
sa.Index("some_index", cls.to_reflect.c.x)
cls.metadata.create_all(testing.db)