On Thu, Feb 19, 2015 at 11:31:10AM -0500, Michael Bayer wrote:
> 
> 
> Julien Cigar <jci...@ulb.ac.be> wrote:
> 
> > On Thu, Feb 19, 2015 at 02:45:43PM +0100, Julien Cigar wrote:
> >> Hello,
> >> 
> >> I'm using SQLAlchemy 0.9.8 with PostgreSQL and the reflection feature of
> >> SQLAlchemy.
> >> 
> >> I have the following tables (only relevant parts are show):
> >> https://gist.github.com/silenius/390bb9937490730741f2
> >> 
> >> and the "problematic" mapper is the one of my association object:
> >> https://gist.github.com/silenius/1559a7db65ed30a1b079
> >> 
> >> SQLAlchemy complains with the following error:
> >> "sqlalchemy.exc.InvalidRequestError: One or more mappers failed to
> >> initialize - can't proceed with initialization of other mappers.
> >> Original exception was: Could not locate any simple equality expressions
> >> involving locally mapped foreign key columns for primary join condition
> >> 'pool_invite_result.pool_invite_pool_id = pool_invite.pool_id AND
> >> pool_invite.pool_id = pool.id' on relationship PoolAccountResult.pool.
> >> Ensure that referencing columns are associated with a ForeignKey or
> >> ForeignKeyConstraint, or are annotated in the join condition with the
> >> foreign() annotation. To allow comparison operators other than '==', the
> >> relationship can be marked as viewonly=True."
> >> 
> >> The problem is that in the PoolAccountResult mapper I want a
> >> relationship to the Pool but the link is made through an intermediate
> >> table (pool_invite) ..
> >> 
> >> Any idea how to handle this with SQLAlchemy ?
> >> 
> >> Thanks :)
> >> 
> >> Julien
> > 
> > ... and I'm answering to myself: it seems to work with
> > https://gist.github.com/silenius/e7e59c96a7277fb5879f 
> > 
> > does it sound right ?
> 
> Sure.  Also, you could use automap which does figure these out in simple 
> cases: http://docs.sqlalchemy.org/en/rel_0_9/orm/extensions/automap.html
> 

always with this, any idea why SQLAlchemy inserts NULL and
NULL for my two relationship (line 51-79) instead of the pool_obj and
dup.owner ids (line 89-90), https://dpaste.de/1Trz ..?

Thanks,
Julien


> 
> 
> > 
> >> -- 
> >> Julien Cigar
> >> Belgian Biodiversity Platform (http://www.biodiversity.be)
> >> PGP fingerprint: EEF9 F697 4B68 D275 7B11  6A25 B2BB 3710 A204 23C0
> >> No trees were killed in the creation of this message.
> >> However, many electrons were terribly inconvenienced.
> >> 
> >> -- 
> >> You received this message because you are subscribed to the Google Groups 
> >> "sqlalchemy" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an 
> >> email to sqlalchemy+unsubscr...@googlegroups.com.
> >> To post to this group, send email to sqlalchemy@googlegroups.com.
> >> Visit this group at http://groups.google.com/group/sqlalchemy.
> >> For more options, visit https://groups.google.com/d/optout.
> > 
> > 
> > 
> > -- 
> > Julien Cigar
> > Belgian Biodiversity Platform (http://www.biodiversity.be)
> > PGP fingerprint: EEF9 F697 4B68 D275 7B11  6A25 B2BB 3710 A204 23C0
> > No trees were killed in the creation of this message.
> > However, many electrons were terribly inconvenienced.
> > 
> > -- 
> > You received this message because you are subscribed to the Google Groups 
> > "sqlalchemy" group.
> > To unsubscribe from this group and stop receiving emails from it, send an 
> > email to sqlalchemy+unsubscr...@googlegroups.com.
> > To post to this group, send email to sqlalchemy@googlegroups.com.
> > Visit this group at http://groups.google.com/group/sqlalchemy.
> > For more options, visit https://groups.google.com/d/optout.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> Visit this group at http://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.

-- 
Julien Cigar
Belgian Biodiversity Platform (http://www.biodiversity.be)
PGP fingerprint: EEF9 F697 4B68 D275 7B11  6A25 B2BB 3710 A204 23C0
No trees were killed in the creation of this message.
However, many electrons were terribly inconvenienced.

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Attachment: pgp9ParhCgn47.pgp
Description: PGP signature

Reply via email to