From 9c822ec823fb8a11745f09b5e45e43b405432ae0 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 8 Jun 2013 15:07:11 +0200 Subject: Propagate custom column name to polymorphic id refs --- odb/relational/processor.cxx | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'odb/relational/processor.cxx') diff --git a/odb/relational/processor.cxx b/odb/relational/processor.cxx index c9f2179..5ac97f5 100644 --- a/odb/relational/processor.cxx +++ b/odb/relational/processor.cxx @@ -208,6 +208,16 @@ namespace relational if (m.count ("polymorphic-ref")) { + // Copy the column name from the root's id member, if specified. + // + { + semantics::class_& r (*object_pointer (t)); + semantics::data_member& id (*id_member (r)); + + if (id.count ("column")) + m.set ("column", id.get ("column")); + } + m.set ("not-null", true); m.set ("deferred", false); m.set ("on-delete", sema_rel::foreign_key::cascade); -- cgit v1.1