Non need. It is now supported as you expected it.

On Tuesday, 11 September 2012 09:52:22 UTC-5, MichaelF wrote:
>
> Great; I appreciate it.
>
> Do you still want me to open a ticket with a suggestion for an enhancement?
>
> Regards,
> Michael
>
> On Monday, September 10, 2012 5:29:12 PM UTC-6, Massimo Di Pierro wrote:
>>
>> Anyway, I changed the code in trunk so that the example in the book works 
>> as described.
>>
>> On Monday, 10 September 2012 17:27:01 UTC-5, Massimo Di Pierro wrote:
>>>
>>> There is a mistake in the book. It should have been:
>>>
>>> rows = db(db.person).select(db.person.ALL, db.dog.ALL, join=db.dog.on(
>>> db.person.id==db.dog.owner))
>>>
>>> or
>>>
>>> rows = db(db.person).select(db.person.ALL, db.dog.ALL, left=db.dog.on(
>>> db.person.id==db.dog.owner))
>>>
>>> Perhaps is should default to select all fields as he book suggests. I 
>>> will look into this. Please open a ticket with a suggestion for enhancement.
>>>
>>> On Monday, September 10, 2012 4:58:25 PM UTC-5, MichaelF wrote:
>>>>
>>>> I have a db structure similar to the person/dog tables in section "6.21 
>>>> One to many relation." I try the inner join (second form, from the book):
>>>>
>>>> 1 >>> rows = db(db.person).select(join=db.dog.on(db.person.id
>>>> ==db.dog.owner))
>>>> 2 >>> for row in rows:
>>>> 3 print row.person.name, 'has', row.dog.name
>>>> 4 Alex has Skipper
>>>> 5 Alex has Snoopy
>>>> 6 Bob has Puppy
>>>>
>>>> In my db the 'person' table is 'Meet', and 'dog' is 'Session'. Here's 
>>>> what I used:
>>>>
>>>> meetAndSession = db(db.Meet).select(join=db.Session.on(db.Meet.id == 
>>>> db.Session.Meet))
>>>>
>>>> I get back the 'person' ('Meet') fields, but not the 'dog' ('Session') 
>>>> fields. For the Meet.Session field I get back a Set object. Should I be 
>>>> using that as the set of Session records associated with the Meet record. 
>>>> (I tried to reference row.Meet.Session.id, but got told there was no 
>>>> such field. I also tried row.Session.id and got told the same thing.) 
>>>> As the example shows row.dog.name, shouldn't I have a 
>>>> row.Session.<fieldName>?
>>>>
>>>> Here's what "db stats" tells me it used:
>>>>
>>>> SELECT  Meet.id, Meet.Meet_name, Meet.Start_date, Meet.End_date, 
>>>> Meet.Is_championship FROM Meet JOIN Session ON (Meet.id = Session.Meet) 
>>>> WHERE (Meet.id > 0);
>>>>
>>>>
>>>> Given that, of course I'm getting no 'dog' ('Session') fields. What am I 
>>>> missing?
>>>>
>>>>
>>>> Thanks.
>>>>
>>>>

-- 



Reply via email to