Ok, figured out, I think, what happen is that you use index to get record
in l (that actually is a pretty bad variable name since it could be
confused with 1 - ONE with some fonts)... By using an index you always get
only the first row in rows because your "l" variable is a rows object that
contains many row(s)... So you only get the first one each time.

You don't have to make complicated code like so...

This should work better :

thead = THEAD(TR(TH(Author), TH(Books)))
tr = []
for Author in AL:
    rows = db(db.Book.Author.contains(Author.id)).select(db.Book.ALL,
orderby=db.Book.Name)

    tr.append(TR(TD(Author.Name), TD([row.Name for row in rows])))

table = TABLE(thead, TBODY(tr))

return dict(table=table)

In your view :

{{=table}}



Richard





On Thu, Nov 21, 2013 at 10:16 AM, BlueShadow <kevin.bet...@gmail.com> wrote:

> def Authors():
>     AL=db().select(db.Author.ALL, orderby=db.Author.Name)
>     TheList=[]
>     for Author in AL:
>         l=db(db.Book.Author.contains(Author.id)).select(db.Book.ALL,
> orderby=db.Book.Name)
>         if len(l)>0:
>             TheList.append([l[0]])
>         else:
>             TheList.append([])
>     return dict(AL=AL,BookList=TheList)
> here is my controller funktion
> and my view:
> <table>
> {{i=0}}
> {{for Author in AL:}}
> <tr>
>     <td>{{=Author.Name}}</td><td></td>
> </tr>
>     {{for b in BookList[i]:}}
>     <tr>
>         <td></td><td>{{=b.Name}}</td>
>     </tr>
>     {{pass}}
>     {{i+=1}}
> {{pass}}
> </table>
> its supposed to give an alphabetical list of all authors which it does.
> and list all their books (only one is displayed)
>
>
>  --
> 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 web2py+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
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 web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to