why contains instead of == ?
db(db.Book.Author == Author.id).select(db.Book.ALL, orderby=db.Book.Name)
On Thursday, November 21, 2013 4:31:53 PM UTC+1, Richard wrote:
>
> 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 <[email protected]<javascript:>
> > 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://www.google.com/url?q=http%3A%2F%2Fweb2py.com&sa=D&sntz=1&usg=AFQjCNE7x6wflFTAQ11b-FhtMwFfvltXeg>
>> -
>> http://web2py.com/book<http://www.google.com/url?q=http%3A%2F%2Fweb2py.com%2Fbook&sa=D&sntz=1&usg=AFQjCNFAv433a0RL4nfaYxTbZ4cHi4Q78A>(Documentation)
>> -
>> http://github.com/web2py/web2py<http://www.google.com/url?q=http%3A%2F%2Fgithub.com%2Fweb2py%2Fweb2py&sa=D&sntz=1&usg=AFQjCNHSwgWBkjuiIoo30014e8BB_iCDag>(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] <javascript:>.
>> 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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.