Dear all,

I've to create an association object where the many-to-many relation has
to be created with only one table:

atominfo_table = Table('atom_info', metadata,
    Column('id', types.Integer, primary_key=True),
    Column('number', types.Integer, nullable=False),
    Column('coord_x', types.Unicode(15), nullable=False),
    Column('coord_y', types.Unicode(15), nullable=False),
    Column('coord_z', types.Unicode(15), nullable=False),
    Column('residue_id', types.Integer,
ForeignKey('residue_info.id'),primary_key=True), 
    Column('periodic_id', types.Integer,ForeignKey('periodic_glos.id'),
primary_key=True), )

atom_atom_table = Table('atom_atom', metadata,
    Column('atom1_id', types.Integer,
ForeignKey('atom_info.id'),primary_key=True), 
    Column('atom2_id', types.Integer, ForeignKey('atom_info.id'),
primary_key=True), 
    Column('interaction_type', types.Unicode(50),nullable=False), 
    Column('distance', types.Unicode(10),nullable=False), )

Is it possible? If yes how can create the mapper?
The following attempt give me the error:
Could not determine join condition between parent/child tables on
 relationship AtomInfo.atom1.  Specify a 'primaryjoin' expression.  If
'secondary' is present, 'secondaryjoin' is needed as well.

mapper(AtomInfo, atominfo_table,
       properties={
          'residue': relationship(ResidueInfo, backref='atominfo'),
          'periodic': relationship(Periodic, backref='atominfo'),
          'atom1': relationship(AtomAtom)
        })

mapper(AtomAtom, atom_atom_table,
       properties={
           'atom2': relationship(AtomInfo)
        })


Thanks
-- 
-------------------------------------------------------------------
       (o_
(o_    //\  Coltivate Linux che tanto Windows si pianta da solo.
(/)_   V_/_
+------------------------------------------------------------------+
|     ENRICO MORELLI         |  email: [email protected]       |
| *     *       *       *    |  phone: +39 055 4574269             |
|  University of Florence    |  fax  : +39 055 4574253             |
|  CERM - via Sacconi, 6 -  50019 Sesto Fiorentino (FI) - ITALY    |
+------------------------------------------------------------------+

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to