On Wed, Aug 12, 2009 at 11:58:38AM +0100, Miguel Tavares wrote:
> Running your example this is the schema on the database:
> CREATE TABLE a (
> id INTEGER PRIMARY KEY
> );
> CREATE TABLE a1_b1 (
> a_id INT NOT NULL,
> b_id INT NOT NULL
> );
> CREATE TABLE a2_b2 (
> a_id INT NOT NULL,
> b_id INT NOT NULL
> );
> CREATE TABLE b (
> id INTEGER PRIMARY KEY
> );
I don't see any problem with the schema.
class A (SQLObject):
B1 = RelatedJoin ('B', addRemoveName='B1', intermediateTable='a1_b1')
B2 = RelatedJoin ('B', addRemoveName='B2', intermediateTable='a2_b2')
class B (SQLObject):
A1 = RelatedJoin ('A', addRemoveName='A1', intermediateTable='a1_b1')
A2 = RelatedJoin ('A', addRemoveName='A2', intermediateTable='a2_b1')
A.createTable()
B.createTable()
a = A()
b1 = B()
b2 = B()
a.addB1(b1)
a.addB2(b2)
print a.B1
print a.B2
1/QueryR : CREATE TABLE a (
id INTEGER PRIMARY KEY
)
2/QueryR : CREATE TABLE a1_b1 (
a_id INT NOT NULL,
b_id INT NOT NULL
)
3/QueryR : CREATE TABLE a2_b2 (
a_id INT NOT NULL,
b_id INT NOT NULL
)
4/QueryR : CREATE TABLE b (
id INTEGER PRIMARY KEY
)
5/QueryR : INSERT INTO a VALUES (NULL)
6/QueryR : SELECT NULL FROM a WHERE ((a.id) = (1))
7/QueryR : INSERT INTO b VALUES (NULL)
8/QueryR : SELECT NULL FROM b WHERE ((b.id) = (1))
9/QueryR : INSERT INTO b VALUES (NULL)
10/QueryR : SELECT NULL FROM b WHERE ((b.id) = (2))
11/QueryR : INSERT INTO a1_b1 (a_id, b_id) VALUES (1, 1)
12/QueryR : INSERT INTO a2_b2 (a_id, b_id) VALUES (1, 2)
13/QueryR : SELECT b_id FROM a1_b1 WHERE a_id = (1)
[<B 1 >]
14/QueryR : SELECT b_id FROM a2_b2 WHERE a_id = (1)
[<B 2 >]
Ok?
Oleg.
--
Oleg Broytmann http://phd.pp.ru/ [email protected]
Programmers don't die, they just GOSUB without RETURN.
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
sqlobject-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss