summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/engine/reflection.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2012-05-17 11:45:05 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2012-05-17 11:45:05 -0400
commit29251675503271fc700a6f7655157850e2de426d (patch)
tree0a6f5a43525fc2e5390716812e511893cc8e9ce7 /lib/sqlalchemy/engine/reflection.py
parentda8032dc45ad8243323e9359f9b31efe1b7cfe5b (diff)
downloadsqlalchemy-29251675503271fc700a6f7655157850e2de426d.tar.gz
- [feature] The "deferred declarative
reflection" system has been moved into the declarative extension itself, using the new DeferredReflection class. This class is now tested with both single and joined table inheritance use cases. [ticket:2485] - [bug] The autoload_replace flag on Table, when False, will cause any reflected foreign key constraints which refer to already-declared columns to be skipped, assuming that the in-Python declared column will take over the task of specifying in-Python ForeignKey or ForeignKeyConstraint declarations.
Diffstat (limited to 'lib/sqlalchemy/engine/reflection.py')
-rw-r--r--lib/sqlalchemy/engine/reflection.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/sqlalchemy/engine/reflection.py b/lib/sqlalchemy/engine/reflection.py
index 13a7e1b88..3a12819f1 100644
--- a/lib/sqlalchemy/engine/reflection.py
+++ b/lib/sqlalchemy/engine/reflection.py
@@ -431,6 +431,9 @@ class Inspector(object):
for fkey_d in fkeys:
conname = fkey_d['name']
constrained_columns = fkey_d['constrained_columns']
+ if exclude_columns and set(constrained_columns).intersection(
+ exclude_columns):
+ continue
referred_schema = fkey_d['referred_schema']
referred_table = fkey_d['referred_table']
referred_columns = fkey_d['referred_columns']