Use orderby:

for row in db(db.person.id==db.thing.owner_id).select(
         db.person.name,db.thing.name, orderby=db.person.name):
         print row.person.name, row.thing.name

Denes


On Saturday, January 23, 2016 at 11:59:59 AM UTC-5, Hermann Tchehoun wrote:
>
> Hello Everyone !
>
> Following this code example in the manual 
> <http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#Inner-joins>,
>  
> I can only print the first thing owned by alex when I do "print 
> row.thing.name"
> What to do to have all the thing owned by someone displayed while grouping 
> them ?
>
> db.define_table('person',
>                     Field('name'),
>                     format='%(name)s')
> db.define_table('thing',
>                     Field('name'),
>                     Field('owner_id', 'reference person'),
>                     format='%(name)s')
>
>         
> count = db.person.id.count()
> for row in db(db.person.id==db.thing.owner_id).select(
>         db.person.name, count, groupby=db.person.name):
>         print row.person.name, row[count]
> Alex 2
> Bob 1
>
> Thanks !
>
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to