Thanks a lot!

On Sat, Sep 3, 2016 at 7:58 PM, Anthony <[email protected]> wrote:

> If you mean that request.args(0) contains the name of the restaurant, then
> you need a join:
>
> t = db((db.Menu.Restaurant == db.Restaurant.id) &
>        (db.Restaurant.name == request.args(0))).select(db.Menu.id).first()
>
> Note, in that case, the Menu id will be in t.Menu.id rather than just t.id
> .
>
> You can also use a reverse recursive select (which will result in two
> queries rather than just one):
>
> t = db.Restaurant(name=request.args(0)).Menu.select(db.Menu.id).first()
>
> A simpler option might be to make request.args(0) be the id of the
> restaurant instead of the name -- then you can just do:
>
> t = db.Menu(restaurant=request.args(0))
>
> Finally, if each restaurant has only one menu, then why not just move the
> menu field(s) into the Restaurant table?
>
> Anthony
>
>
>
>
>
> On Friday, September 2, 2016 at 2:27:23 PM UTC-4, @brooks wrote:
>>
>> I want to  select those records in the Menu table such that the name of
>> the restaurant with id in the Menu.restaurant field
>> ==request.args(0).So,what should be the DAL query here?
>>
>>
>> On Fri, Sep 2, 2016 at 6:51 PM, Anthony <[email protected]> wrote:
>>
>>> indices=db(db.Menu).select()
>>>> for index in indices:
>>>>     t=db(index.restaurant.Name==request.args[0]).select(db.Menu.
>>>> ALL).first()
>>>>
>>>
>>> Above, index.restaurant.Name is simply a string value (the name of the
>>> restaurant in question), as is request.args(0). Therefore,
>>> index.restaurant.Name==request.args(0) is not a DAL Query object but
>>> simply a standard Python boolean that is either True or False. Regardless
>>> of the value of that boolean, the results of the query will be the same --
>>> all records from db.Menu will be selected.
>>>
>>> Perhaps you can explain what you are trying to achieve here.
>>>
>>> Anthony
>>>
>>> --
>>> 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 a topic in the
>>> Google Groups "web2py-users" group.
>>> To unsubscribe from this topic, visit https://groups.google.com/d/to
>>> pic/web2py/E4VyjG0jS94/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> 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 a topic in the
> Google Groups "web2py-users" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/web2py/E4VyjG0jS94/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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