Hello everyone,

I've been following tutorial 
http://www.sqlalchemy.org/docs/05/ormtutorial.html which explains how to 
use 'relation' function using declarative extension.

However, in my app I define classes and tables for classes separately, 
and tutorial does not cover how to use relation in such context 
(googling for it does not return much info either) . All it says is this:

"When declarative is not in use, you typically define your mapper() well 
after the target classes and Table objects have been defined, so string 
expressions are not needed."

Does that mean that I need to define relation in mapper(UserClass, 
usertable) call somehow?

I have:

    hosts_table = Table('hosts',md,
     Column('id',Integer,primary_key=True),
     Column('IP',String),
     Column('HostName',String),
     Column('Location',String),
     Column('Architecture_id',Integer,ForeignKey('architecture.id')),
     Column('OS_Kind_id',Integer,ForeignKey('os_kind.id')),
     Column('OS_version_id',Integer,ForeignKey('os_version.id')),
     Column('Additional_info__visible_for_all_users',String),
     Column('End_Date',SLDate),

...

     mapper(Host, hosts_table)

     architecture_table = Table('architecture',md,
     Column('id',Integer,primary_key=True),
     Column('Architecture',String))
     mapper(Architecture, architecture_table)

     os_kind_table = Table('os_kind',md,
     Column('id',Integer,primary_key=True),
     Column('OS_Kind',String))
     mapper(OS_Kind, os_kind_table)

     os_version_table = Table('os_version',md,
     Column('id',Integer,primary_key=True),
     Column('OS_version',String))
     mapper(OS_version, os_version_table)

     email_table = Table('email',md,
     Column('id',Integer,primary_key=True),
     Column('Email',String))
     mapper(Email,email_table)


Now, md.create_all() does create proper db structure (I know bc I 
examined sqlite db after session.commit()).

However, if I do not use the relation() somewhere, does that mean that 
foreign keys may not work properly or there will be some other adverse 
effects?

How do I use relation() with above?

I'd love to see such info added to the tutorial..

Regards,
mk


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

Reply via email to